/*
article,
aside,
details,
figcaption,
figure,
footer,
header,fappear
hgroup,
nav,
section {
  display: block;
}
*/
/*
audio,
canvas,
video {
  display: inline-block;
  *display: inline;
  *zoom: 1;
}
*/
/*
audio:not([controls]) {
    display: none;
}
*/
html {
  height: 100%;
  font-size: 100%;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
}
a:focus {
  outline: 0;
}
a:hover,
a:active {
  outline: 0;
  -webkit-transition: background-color 100ms linear;
  transition: background-color 100ms linear;
}
sub,
sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
}
sup {
  top: -0.5em;
}
sub {
  bottom: -0.25em;
}
img {
  max-width: 100%;
  max-height: 500px;
  vertical-align: middle;
  border: 0;
  -ms-interpolation-mode: bicubic;
}
img[src$='.jpg'],
img[src$='.jpeg'] {
  image-rendering: -webkit-optimize-contrast;
}
#map_canvas img {
  max-width: none;
}
input:focus,
textarea:focus {
  outline: 0;
}
button,
input,
select,
textarea {
  margin: 0;
  font-size: 100%;
  vertical-align: middle;
}
button,
input {
  *overflow: visible;
  line-height: normal;
}
button::-moz-focus-inner,
input::-moz-focus-inner {
  padding: 0;
  border: 0;
}
button,
input[type='button'],
input[type='reset'],
input[type='submit'] {
  cursor: pointer;
  -webkit-appearance: button;
}
input[type='search'] {
  box-sizing: content-box;
}
input[type='search']::-webkit-search-decoration,
input[type='search']::-webkit-search-cancel-button {
  -webkit-appearance: none;
}
textarea {
  overflow: auto;
  vertical-align: top;
}
a {
  color: #0277bd;
  text-decoration: none;
}
a:hover {
  color: #039be5;
}
p {
  margin: 0 0 0.8em;
}
p small {
  font-size: 13px;
}
ul,
ol {
  padding: 0;
  margin: 0 0 0.8em 25px;
}
ul ul,
ul ol,
ol ol,
ol ul {
  margin-bottom: 0;
}
ul {
  list-style: disc;
}
ol {
  list-style: decimal;
}
li {
  line-height: 1.6em;
}
ul.unstyled,
ol.unstyled {
  margin-left: 0;
  list-style: none;
}
dl {
  margin-bottom: 1.6em;
}
dt,
dd {
  line-height: 1.6em;
}
dt {
  font-weight: bold;
  line-height: 0.6em;
}
dd {
  margin-left: 0.8em;
}
.dl-horizontal dt {
  float: left;
  width: 120px;
  clear: left;
  text-align: right;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.dl-horizontal dd {
  margin-left: 130px;
}
hr {
  margin: 20px 0;
  border: 0;
  border-top: 1px solid #bbb;
  border-bottom: 1px solid #fff;
}
strong {
  font-weight: bold;
  font-weight: 600;
}
em {
  font-style: italic;
}
.muted {
  color: #f7f7f7;
}
abbr[title] {
  cursor: help;
  border-bottom: 1px dotted #f7f7f7;
}
abbr.initialism {
  font-size: 90%;
  text-transform: uppercase;
}
address {
  display: block;
  margin-bottom: 1.6em;
  font-style: normal;
  line-height: 1.6em;
}
small {
  font-size: 100%;
}
cite {
  font-style: normal;
}
code,
pre {
  padding: 0 3px 2px;
  font-family: Menlo, Monaco, Consolas, 'Courier New', monospace;
  font-size: 14px;
  color: #333;
  border-radius: 0px;
}
code {
  padding: 2px 4px;
  color: #666;
  background-color: #f7f7f9;
  border: 1px solid #e1e1e8;
}
pre {
  display: block;
  padding: 0.3em;
  margin: 0 0 0.8em;
  font-size: 13.875px;
  line-height: 1.6em;
  word-break: break-all;
  word-wrap: break-word;
  white-space: pre;
  white-space: pre-wrap;
  background-color: #f5f5f5;
  border: 1px solid #ccc;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 4px;
}
pre.prettyprint {
  margin-bottom: 1.6em;
}
pre code {
  padding: 0;
  color: inherit;
  background-color: transparent;
  border: 0;
}
.pre-scrollable {
  max-height: 340px;
  overflow-y: scroll;
}
form {
  margin: 0 0 1.6em;
}
fieldset {
  padding: 0;
  margin: 0;
  border: 0;
}
legend {
  display: block;
  width: 100%;
  padding: 0;
  margin-bottom: 2.4em;
  font-size: 22.5px;
  line-height: 3.2em;
  color: #d8d8d8;
  border: 0;
  border-bottom: 1px solid #e5e5e5;
}
legend small {
  font-size: 1.2em;
  color: #f7f7f7;
}
label,
input,
button,
select,
textarea {
  font-size: 15px;
  font-weight: normal;
  line-height: 1.6em;
}
input,
button,
select,
textarea {
  font-family: 'Soleil', Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
label {
  display: block;
  margin-bottom: 5px;
}
select,
textarea,
input[type='text'],
input[type='password'],
input[type='datetime'],
input[type='datetime-local'],
input[type='date'],
input[type='month'],
input[type='time'],
input[type='week'],
input[type='number'],
input[type='email'],
input[type='url'],
input[type='search'],
input[type='tel'],
input[type='color'],
.uneditable-input {
  display: inline-block;
  height: 1.6em;
  padding: 4px;
  margin-bottom: 9px;
  font-size: 15px;
  line-height: 1.6em;
  color: #333;
}
input,
textarea {
  width: 210px;
}
textarea {
  height: auto;
}
select,
textarea,
input[type='text'],
input[type='password'],
input[type='datetime'],
input[type='datetime-local'],
input[type='date'],
input[type='month'],
input[type='time'],
input[type='week'],
input[type='number'],
input[type='email'],
input[type='url'],
input[type='search'],
input[type='tel'],
input[type='color'],
.uneditable-input {
  background-color: #fff;
  border: 1px solid #777;
  border-radius: 0px;
  box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.2);
  -webkit-transition: border linear 0.2s, box-shadow linear 0.2s;
  transition: border linear 0.2s, box-shadow linear 0.2s;
}
select:-moz-placeholder,
textarea:-moz-placeholder,
input[type='text']:-moz-placeholder,
input[type='password']:-moz-placeholder,
input[type='datetime']:-moz-placeholder,
input[type='datetime-local']:-moz-placeholder,
input[type='date']:-moz-placeholder,
input[type='month']:-moz-placeholder,
input[type='time']:-moz-placeholder,
input[type='week']:-moz-placeholder,
input[type='number']:-moz-placeholder,
input[type='email']:-moz-placeholder,
input[type='url']:-moz-placeholder,
input[type='search']:-moz-placeholder,
input[type='tel']:-moz-placeholder,
input[type='color']:-moz-placeholder,
.uneditable-input:-moz-placeholder {
  color: #919191;
}
select:-ms-input-placeholder,
textarea:-ms-input-placeholder,
input[type='text']:-ms-input-placeholder,
input[type='password']:-ms-input-placeholder,
input[type='datetime']:-ms-input-placeholder,
input[type='datetime-local']:-ms-input-placeholder,
input[type='date']:-ms-input-placeholder,
input[type='month']:-ms-input-placeholder,
input[type='time']:-ms-input-placeholder,
input[type='week']:-ms-input-placeholder,
input[type='number']:-ms-input-placeholder,
input[type='email']:-ms-input-placeholder,
input[type='url']:-ms-input-placeholder,
input[type='search']:-ms-input-placeholder,
input[type='tel']:-ms-input-placeholder,
input[type='color']:-ms-input-placeholder,
.uneditable-input:-ms-input-placeholder {
  color: #919191;
}
select::-webkit-input-placeholder,
textarea::-webkit-input-placeholder,
input[type='text']::-webkit-input-placeholder,
input[type='password']::-webkit-input-placeholder,
input[type='datetime']::-webkit-input-placeholder,
input[type='datetime-local']::-webkit-input-placeholder,
input[type='date']::-webkit-input-placeholder,
input[type='month']::-webkit-input-placeholder,
input[type='time']::-webkit-input-placeholder,
input[type='week']::-webkit-input-placeholder,
input[type='number']::-webkit-input-placeholder,
input[type='email']::-webkit-input-placeholder,
input[type='url']::-webkit-input-placeholder,
input[type='search']::-webkit-input-placeholder,
input[type='tel']::-webkit-input-placeholder,
input[type='color']::-webkit-input-placeholder,
.uneditable-input::-webkit-input-placeholder {
  color: #919191;
}
select.placeholder,
textarea.placeholder,
input[type='text'].placeholder,
input[type='password'].placeholder,
input[type='datetime'].placeholder,
input[type='datetime-local'].placeholder,
input[type='date'].placeholder,
input[type='month'].placeholder,
input[type='time'].placeholder,
input[type='week'].placeholder,
input[type='number'].placeholder,
input[type='email'].placeholder,
input[type='url'].placeholder,
input[type='search'].placeholder,
input[type='tel'].placeholder,
input[type='color'].placeholder,
.uneditable-input.placeholder {
  color: #919191;
}
select:focus,
textarea:focus,
input[type='text']:focus,
input[type='password']:focus,
input[type='datetime']:focus,
input[type='datetime-local']:focus,
input[type='date']:focus,
input[type='month']:focus,
input[type='time']:focus,
input[type='week']:focus,
input[type='number']:focus,
input[type='email']:focus,
input[type='url']:focus,
input[type='search']:focus,
input[type='tel']:focus,
input[type='color']:focus,
.uneditable-input:focus {
  border-color: #333;
  outline: 0;
  outline: thin dotted \9;
  /* IE6-9 */
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.2);
}
input[type='radio'],
input[type='checkbox'] {
  margin: 3px 0;
  *margin-top: 0;
  /* IE7 */
  line-height: normal;
  cursor: pointer;
}
input[type='submit'],
input[type='reset'],
input[type='button'],
input[type='radio'],
input[type='checkbox'] {
  width: auto;
}
.uneditable-textarea {
  width: auto;
  height: auto;
}
select,
input[type='file'] {
  height: 28px;
  /* In IE7, the height of the select element cannot be changed by height, only font-size */
  *margin-top: 4px;
  /* For IE7, add top margin to align select with labels */
  line-height: 28px;
}
select {
  width: 220px;
  border: 1px solid #777;
}
select[multiple],
select[size] {
  height: auto;
}
select:focus,
input[type='file']:focus,
input[type='radio']:focus,
input[type='checkbox']:focus {
  outline: none;
  border: 1px solid #444444;
}
.clearfix {
  *zoom: 1;
}
.clearfix:before,
.clearfix:after {
  display: table;
  content: '';
}
.clearfix:after {
  clear: both;
}
.hide-text {
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0;
}
.input-block-level {
  display: block;
  width: 100%;
  min-height: 28px;
}
.radio,
.checkbox {
  min-height: 18px;
  padding-left: 18px;
}
.radio input[type='radio'],
.checkbox input[type='checkbox'] {
  float: left;
  margin-left: -18px;
}
.controls > .radio:first-child,
.controls > .checkbox:first-child {
  padding-top: 5px;
}
.radio.inline,
.checkbox.inline {
  display: inline-block;
  padding-top: 5px;
  margin-bottom: 0;
  vertical-align: middle;
}
.radio.inline + .radio.inline,
.checkbox.inline + .checkbox.inline {
  margin-left: 10px;
}
input[disabled],
select[disabled],
textarea[disabled],
input[readonly],
select[readonly],
textarea[readonly] {
  cursor: not-allowed;
  background-color: #f0f0f0;
  border-color: #ddd;
}
input[type='radio'][disabled],
input[type='checkbox'][disabled],
input[type='radio'][readonly],
input[type='checkbox'][readonly] {
  background-color: transparent;
}
.control-group.warning > label,
.control-group.warning .help-block,
.control-group.warning .help-inline {
  color: #ffc500;
}
.control-group.warning .checkbox,
.control-group.warning .radio,
.control-group.warning input,
.control-group.warning select,
.control-group.warning textarea {
  color: #ffc500;
  border-color: #ffc500;
}
.control-group.warning .checkbox:focus,
.control-group.warning .radio:focus,
.control-group.warning input:focus,
.control-group.warning select:focus,
.control-group.warning textarea:focus {
  border-color: #cc9e00;
  box-shadow: 0 0 6px #ffdc66;
}
.control-group.warning .input-prepend .add-on,
.control-group.warning .input-append .add-on {
  color: #ffc500;
  background-color: #ffc500;
  border-color: #ffc500;
}
.control-group.error > label,
.control-group.error .help-block,
.control-group.error .help-inline {
  color: #e91e63;
}
.control-group.error .checkbox,
.control-group.error .radio,
.control-group.error input,
.control-group.error select,
.control-group.error textarea {
  color: #e91e63;
  border-color: #e91e63;
}
.control-group.error .checkbox:focus,
.control-group.error .radio:focus,
.control-group.error input:focus,
.control-group.error select:focus,
.control-group.error textarea:focus {
  border-color: #c1134e;
  box-shadow: 0 0 6px #f27ba3;
}
.control-group.error .input-prepend .add-on,
.control-group.error .input-append .add-on {
  color: #e91e63;
  background-color: #e91e63;
  border-color: #e91e63;
}
.control-group.success > label,
.control-group.success .help-block,
.control-group.success .help-inline {
  color: #333;
}
.control-group.success .checkbox,
.control-group.success .radio,
.control-group.success input,
.control-group.success select,
.control-group.success textarea {
  color: #333;
  border-color: #333;
}
.control-group.success .checkbox:focus,
.control-group.success .radio:focus,
.control-group.success input:focus,
.control-group.success select:focus,
.control-group.success textarea:focus {
  border-color: #1a1a1a;
  box-shadow: 0 0 6px #666666;
}
.control-group.success .input-prepend .add-on,
.control-group.success .input-append .add-on {
  color: #333;
  background-color: #333;
  border-color: #333;
}
input:focus:required:invalid,
textarea:focus:required:invalid,
select:focus:required:invalid {
  color: #b94a48;
  border-color: #ee5f5b;
}
input:focus:required:invalid:focus,
textarea:focus:required:invalid:focus,
select:focus:required:invalid:focus {
  border-color: #e9322d;
  box-shadow: 0 0 6px #f8b9b7;
}
.form-actions {
  padding: 0.6em 20px 1.6em;
  margin-top: 1.6em;
  margin-bottom: 1.6em;
  background-color: #f5f5f5;
  border-top: 1px solid #e5e5e5;
  *zoom: 1;
}
.form-actions:before,
.form-actions:after {
  display: table;
  content: '';
}
.form-actions:after {
  clear: both;
}
.form-actions:before,
.form-actions:after {
  display: table;
  content: '';
}
.form-actions:after {
  clear: both;
}
.uneditable-input {
  overflow: hidden;
  white-space: nowrap;
  cursor: not-allowed;
  background-color: #fff;
  border-color: #eee;
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.025);
}
:-moz-placeholder {
  color: #d8d8d8;
}
:-ms-input-placeholder {
  color: #d8d8d8;
}
::-webkit-input-placeholder {
  color: #d8d8d8;
}
.placeholder {
  color: #d8d8d8;
}
.help-block {
  color: #d8d8d8;
}
.help-block {
  display: block;
  margin-bottom: 0.8em;
}
.control-group {
  margin-bottom: 0.8em;
}
legend + .control-group {
  margin-top: 1.6em;
  -webkit-margin-top-collapse: separate;
}
table {
  max-width: 100%;
  background-color: transparent;
  border-collapse: collapse;
  border-spacing: 0;
}
.table {
  width: 100%;
  margin-bottom: 1.6em;
}
.table th,
.table td {
  padding: 8px;
  line-height: 1.6em;
  text-align: left;
  vertical-align: top;
  border-top: 1px solid #333;
}
.table th {
  font-weight: bold;
}
.table thead th {
  vertical-align: bottom;
}
.table caption + thead tr:first-child th,
.table caption + thead tr:first-child td,
.table colgroup + thead tr:first-child th,
.table colgroup + thead tr:first-child td,
.table thead:first-child tr:first-child th,
.table thead:first-child tr:first-child td {
  border-top: 0;
}
.table tbody + tbody {
  border-top: 2px solid #333;
}
.table-condensed th,
.table-condensed td {
  padding: 4px 5px;
}
.table-bordered {
  border: 1px solid #333;
  border-collapse: separate;
  *border-collapse: collapsed;
  border-left: 0;
  border-radius: 4px;
}
.table-bordered th,
.table-bordered td {
  border-left: 1px solid #333;
}
.table-bordered caption + thead tr:first-child th,
.table-bordered caption + tbody tr:first-child th,
.table-bordered caption + tbody tr:first-child td,
.table-bordered colgroup + thead tr:first-child th,
.table-bordered colgroup + tbody tr:first-child th,
.table-bordered colgroup + tbody tr:first-child td,
.table-bordered thead:first-child tr:first-child th,
.table-bordered tbody:first-child tr:first-child th,
.table-bordered tbody:first-child tr:first-child td {
  border-top: 0;
}
.table-bordered thead:first-child tr:first-child th:first-child,
.table-bordered tbody:first-child tr:first-child td:first-child {
  border-top-left-radius: 4px;
}
.table-bordered thead:first-child tr:first-child th:last-child,
.table-bordered tbody:first-child tr:first-child td:last-child {
  border-top-right-radius: 4px;
}
.table-bordered thead:last-child tr:last-child th:first-child,
.table-bordered tbody:last-child tr:last-child td:first-child {
  border-radius: 0 0 0 4px;
}
.table-bordered thead:last-child tr:last-child th:last-child,
.table-bordered tbody:last-child tr:last-child td:last-child {
  border-bottom-right-radius: 4px;
}
.table-striped tbody tr:nth-child(odd) td,
.table-striped tbody tr:nth-child(odd) th {
  background-color: #f9f9f9;
}
.table-hover tbody tr:hover td,
.table-hover tbody tr:hover th {
  background-color: #f5f5f5;
}
.well {
  min-height: 20px;
  padding: 19px;
  margin-bottom: 20px;
  background-color: #f5f5f5;
  border: 1px solid #eee;
  border: 1px solid rgba(0, 0, 0, 0.05);
  border-radius: 4px;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
}
.well blockquote {
  border-color: #ddd;
  border-color: rgba(0, 0, 0, 0.15);
}
.well-large {
  padding: 24px;
  border-radius: 6px;
}
.well-small {
  padding: 9px;
  border-radius: 3px;
}
.alert {
  padding: 16px;
  margin-bottom: 24px;
  background-color: #f0f0f0;
  color: #333;
  font-weight: 500;
  border-radius: 0px;
}
.alert a {
  color: inherit;
  text-decoration: underline;
}
.alert a:hover {
  text-decoration: none;
}
.alert-heading {
  color: inherit;
}
.alert-success {
  background: #95d3fe;
  color: #01579b;
}
.alert-warning,
.alert-error {
  background: #ffc500;
}
.alert-danger {
  background: #161616;
  color: #ffde5c;
}
.alert-info {
  background: #fff7e6;
  border: 1px solid #bbb;
  color: #01579b;
}
.alert-dark {
  background: #333;
  color: #777;
}
.alert-block {
  padding-top: 16px;
  padding-bottom: 16px;
}
.alert-block > p,
.alert-block > ul {
  margin-bottom: 0;
}
.alert-block p + p {
  margin-top: 5px;
}
.tooltip {
  position: absolute;
  z-index: 300;
  display: block;
  visibility: visible;
  padding: 5px;
  font-size: 11px;
  opacity: 0;
}
.tooltip.in {
  opacity: 0.8;
}
.tooltip.top {
  margin-top: -2px;
}
.tooltip.right {
  margin-left: 2px;
}
.tooltip.bottom {
  margin-top: 2px;
}
.tooltip.left {
  margin-left: -2px;
}
.tooltip.top .tooltip-arrow {
  bottom: 0;
  left: 50%;
  margin-left: -5px;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-top: 5px solid #333;
}
.tooltip.left .tooltip-arrow {
  top: 50%;
  right: 0;
  margin-top: -5px;
  border-top: 5px solid transparent;
  border-bottom: 5px solid transparent;
  border-left: 5px solid #333;
}
.tooltip.bottom .tooltip-arrow {
  top: 0;
  left: 50%;
  margin-left: -5px;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-bottom: 5px solid #333;
}
.tooltip.right .tooltip-arrow {
  top: 50%;
  left: 0;
  margin-top: -5px;
  border-top: 5px solid transparent;
  border-bottom: 5px solid transparent;
  border-right: 5px solid #333;
}
.tooltip-inner {
  max-width: 200px;
  padding: 5px 8px 6px 8px;
  color: #fff;
  text-align: center;
  text-decoration: none;
  text-shadow: 0 1px 3px rgba(0, 0, 0, 0.5);
  background-color: #333;
  line-height: 1.3em;
  border-radius: 2px;
}
.tooltip-inner a {
  color: #fff;
  text-decoration: underline;
}
.tooltip-inner a:hover {
  text-decoration: none;
}
.tooltip-arrow {
  position: absolute;
  width: 0;
  height: 0;
}
.pull-right {
  float: right;
}
.pull-left {
  float: left;
}
.hide {
  display: none;
}
.show {
  display: block;
}
.invisible {
  visibility: hidden;
}
.topic-icon-small {
  background-image: url(/site_media/sprite-577eb357a93/build/sprites/css-sprite-topic-icons-small.png);
  background-position: -40px 0px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: inline-block;
  width: 38px;
  height: 39px;
}
@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx) {
  .topic-icon-small {
    background-image: url(/site_media/sprite-577eb357a93/build/sprites/css-sprite-topic-icons-small-x2.png);
    background-size: 198px 119px;
  }
}
.topic-icon-small.basicmathematics,
.topic-icon-small.basic-mathematics {
  background-position: 0px -41px;
}
.topic-icon-small.algebra {
  background-position: -80px 0px;
}
.topic-icon-small.geometry {
  background-position: -40px -81px;
}
.topic-icon-small.calculus {
  background-position: -40px -41px;
}
.topic-icon-small.numbertheory,
.topic-icon-small.number-theory {
  background-position: -40px 0px;
}
.topic-icon-small.logic {
  background-position: -120px -81px;
}
.topic-icon-small.combinatorics,
.topic-icon-small.discrete-mathematics {
  background-position: 0px 0px;
}
.topic-icon-small.classical-mechanics,
.topic-icon-small.mechanics,
.topic-icon-small.mechanics-2 {
  background-position: -120px 0px;
}
.topic-icon-small.electricityandmagnetism,
.topic-icon-small.electricity-and-magnetism {
  background-position: 0px -81px;
}
.topic-icon-small.computerscience,
.topic-icon-small.computer-science {
  background-position: -120px -40px;
}
.topic-icon-small.quantitativefinance,
.topic-icon-small.quantitative-finance {
  background-position: -160px 0px;
}
.topic-icon-small.sat,
.topic-icon-small.satmath,
.topic-icon-small.sat-math {
  background-position: -160px -40px;
}
.topic-icon-small.jee,
.topic-icon-small.jee-math,
.topic-icon-small.jee-physics {
  background-position: -80px -81px;
}
.topic-icon-small.chemistry {
  background-position: -80px -41px;
}
.codehilite .hll {
  background-color: #ffffcc;
}
.codehilite {
  background: #ffffff;
}
.codehilite .c {
  color: #aaaaaa;
  font-style: italic;
}
/* Comment */
.codehilite .err {
  color: #f00000;
  background-color: #f0a0a0;
}
/* Error */
.codehilite .k {
  color: #0000aa;
}
/* Keyword */
.codehilite .cm {
  color: #aaaaaa;
  font-style: italic;
}
/* Comment.Multiline */
.codehilite .cp {
  color: #4c8317;
}
/* Comment.Preproc */
.codehilite .c1 {
  color: #aaaaaa;
  font-style: italic;
}
/* Comment.Single */
.codehilite .cs {
  color: #0000aa;
  font-style: italic;
}
/* Comment.Special */
.codehilite .gd {
  color: #aa0000;
}
/* Generic.Deleted */
.codehilite .ge {
  font-style: italic;
}
/* Generic.Emph */
.codehilite .gr {
  color: #aa0000;
}
/* Generic.Error */
.codehilite .gh {
  color: #000080;
  font-weight: bold;
}
/* Generic.Heading */
.codehilite .gi {
  color: #00aa00;
}
/* Generic.Inserted */
.codehilite .go {
  color: #888888;
}
/* Generic.Output */
.codehilite .gp {
  color: #555555;
}
/* Generic.Prompt */
.codehilite .gs {
  font-weight: bold;
}
/* Generic.Strong */
.codehilite .gu {
  color: #800080;
  font-weight: bold;
}
/* Generic.Subheading */
.codehilite .gt {
  color: #aa0000;
}
/* Generic.Traceback */
.codehilite .kc {
  color: #0000aa;
}
/* Keyword.Constant */
.codehilite .kd {
  color: #0000aa;
}
/* Keyword.Declaration */
.codehilite .kn {
  color: #0000aa;
}
/* Keyword.Namespace */
.codehilite .kp {
  color: #0000aa;
}
/* Keyword.Pseudo */
.codehilite .kr {
  color: #0000aa;
}
/* Keyword.Reserved */
.codehilite .kt {
  color: #00aaaa;
}
/* Keyword.Type */
.codehilite .m {
  color: #009999;
}
/* Literal.Number */
.codehilite .s {
  color: #aa5500;
}
/* Literal.String */
.codehilite .na {
  color: #1e90ff;
}
/* Name.Attribute */
.codehilite .nb {
  color: #00aaaa;
}
/* Name.Builtin */
.codehilite .nc {
  color: #00aa00;
  text-decoration: underline;
}
/* Name.Class */
.codehilite .no {
  color: #aa0000;
}
/* Name.Constant */
.codehilite .nd {
  color: #888888;
}
/* Name.Decorator */
.codehilite .ni {
  color: #800000;
  font-weight: bold;
}
/* Name.Entity */
.codehilite .nf {
  color: #00aa00;
}
/* Name.Function */
.codehilite .nn {
  color: #00aaaa;
  text-decoration: underline;
}
/* Name.Namespace */
.codehilite .nt {
  color: #1e90ff;
  font-weight: bold;
}
/* Name.Tag */
.codehilite .nv {
  color: #aa0000;
}
/* Name.Variable */
.codehilite .ow {
  color: #0000aa;
}
/* Operator.Word */
.codehilite .w {
  color: #bbbbbb;
}
/* Text.Whitespace */
.codehilite .mf {
  color: #009999;
}
/* Literal.Number.Float */
.codehilite .mh {
  color: #009999;
}
/* Literal.Number.Hex */
.codehilite .mi {
  color: #009999;
}
/* Literal.Number.Integer */
.codehilite .mo {
  color: #009999;
}
/* Literal.Number.Oct */
.codehilite .sb {
  color: #aa5500;
}
/* Literal.String.Backtick */
.codehilite .sc {
  color: #aa5500;
}
/* Literal.String.Char */
.codehilite .sd {
  color: #aa5500;
}
/* Literal.String.Doc */
.codehilite .s2 {
  color: #aa5500;
}
/* Literal.String.Double */
.codehilite .se {
  color: #aa5500;
}
/* Literal.String.Escape */
.codehilite .sh {
  color: #aa5500;
}
/* Literal.String.Heredoc */
.codehilite .si {
  color: #aa5500;
}
/* Literal.String.Interpol */
.codehilite .sx {
  color: #aa5500;
}
/* Literal.String.Other */
.codehilite .sr {
  color: #009999;
}
/* Literal.String.Regex */
.codehilite .s1 {
  color: #aa5500;
}
/* Literal.String.Single */
.codehilite .ss {
  color: #0000aa;
}
/* Literal.String.Symbol */
.codehilite .bp {
  color: #00aaaa;
}
/* Name.Builtin.Pseudo */
.codehilite .vc {
  color: #aa0000;
}
/* Name.Variable.Class */
.codehilite .vg {
  color: #aa0000;
}
/* Name.Variable.Global */
.codehilite .vi {
  color: #aa0000;
}
/* Name.Variable.Instance */
.codehilite .il {
  color: #009999;
}
/* Literal.Number.Integer.Long */
.codehilitetable {
  table-layout: fixed;
  width: 100%;
}
.codehilitetable.has-lang {
  position: relative;
}
.codehilitetable.has-lang .linenos,
.codehilitetable.has-lang .code {
  padding-top: 40px;
}
.codehilitetable.has-lang .codehilite code:before {
  content: attr(data-lang);
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  padding: 0 16px;
  border: 1px solid #bbb;
  margin: 1px;
  background-color: #f0f0f0;
  color: #333;
  font-family: Menlo, Monaco, Consolas, 'Courier New', monospace;
  font-size: 13px;
  font-weight: 500;
  line-height: 40px;
}
.codehilitetable .linenos {
  width: 35px;
  vertical-align: top;
}
.codehilitetable .linenodiv {
  position: relative;
}
.codehilitetable .linenodiv pre {
  position: absolute;
  min-width: 36px;
  border: 1px solid #bbb;
  background-color: #f0f0f0;
  color: #bbb;
  text-align: right;
  white-space: pre;
  z-index: 0;
  border-radius: 0;
}
.codehilitetable .code {
  vertical-align: top;
}
.codehilitetable .codehilite pre {
  padding-left: 14.5px;
  padding-right: 14.5px;
  border: 1px solid #bbb;
  background-color: #fbfbfb;
  overflow: auto;
  overflow-x: auto;
  overflow-y: visible;
  white-space: pre;
  word-wrap: normal;
  border-radius: 0;
}
.qq-uploader {
  position: relative;
  width: 100%;
}
.qq-uploader .spinner {
  display: none;
  float: left;
  margin: 8px 0 0 16px;
}
.qq-upload-button {
  display: block;
  float: left;
  width: 105px;
  display: inline-block;
  padding: 3px 16px;
  margin-bottom: 0;
  font-size: 15px;
  line-height: 1.6em;
  *line-height: 20px;
  color: #333;
  text-align: center;
  vertical-align: middle;
  cursor: pointer;
  background: #f0f0f0;
  border: 1px solid #bbb;
  outline: none;
  border-radius: 4px;
  -webkit-transition: box-shadow 100ms linear, color 100ms linear;
  transition: box-shadow 100ms linear, color 100ms linear;
  touch-action: manipulation;
}
.qq-upload-button:hover,
.qq-upload-button:focus,
.qq-upload-button:active,
.qq-upload-button.active {
  text-decoration: none;
}
.qq-upload-button:hover,
.qq-upload-button:focus,
.qq-upload-button:active {
  color: #0277bd;
  box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.3);
}
.qq-upload-button.disabled,
.qq-upload-button[disabled] {
  border-color: #bbb;
  color: #777;
  cursor: default;
  box-shadow: none;
  opacity: 0.3;
}
.qq-upload-button.show-replies,
.qq-upload-button.comment-reply {
  width: 128px;
  padding-top: 2px;
  padding-bottom: 2px;
}
.qq-upload-button-hover {
  background: #333;
}
.qq-upload-button-focus {
  outline: 1px dotted black;
}
.qq-upload-drop-area {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  padding: 8px 0;
  border: 1px dashed #777;
  background: #fff;
  text-align: center;
  z-index: 1;
}
.qq-upload-drop-area span {
  display: block;
  position: relative;
  width: 100%;
  font-size: 15px;
  color: #919191;
}
.qq-upload-drop-area-active {
  background: #f7f7f7;
  border-color: #333;
}
.qq-upload-list {
  display: none;
}
.qq-upload-file,
.qq-upload-spinner,
.qq-upload-size,
.qq-upload-cancel,
.qq-upload-failed-text {
  margin-right: 8px;
}
.qq-upload-spinner {
  display: inline-block;
  width: 16px;
  height: 16px;
  background: url(/site_media/version-0yVF3fCUUB/images/spinner-dark.gif) 0 0 no-repeat;
  vertical-align: text-bottom;
}
.qq-upload-size,
.qq-upload-cancel {
  font-size: 11px;
}
.qq-upload-failed-text {
  display: none;
}
.qq-upload-fail .qq-upload-failed-text {
  display: inline;
}
.btn {
  display: inline-block;
  padding: 3px 16px;
  margin-bottom: 0;
  font-size: 15px;
  line-height: 1.6em;
  *line-height: 20px;
  color: #333;
  text-align: center;
  vertical-align: middle;
  cursor: pointer;
  background: #f0f0f0;
  border: 1px solid #bbb;
  outline: none;
  border-radius: 4px;
  -webkit-transition: box-shadow 100ms linear, color 100ms linear;
  transition: box-shadow 100ms linear, color 100ms linear;
  touch-action: manipulation;
}
.btn:hover,
.btn:focus,
.btn:active,
.btn.active {
  text-decoration: none;
}
.btn:hover,
.btn:focus,
.btn:active {
  color: #0277bd;
  box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.3);
}
.btn.disabled,
.btn[disabled] {
  border-color: #bbb;
  color: #777;
  cursor: default;
  box-shadow: none;
  opacity: 0.3;
}
.btn-flat {
  padding: 5px 16px;
  border: 0;
  font-weight: bold;
  box-shadow: none;
}
.btn-accent {
  border-color: #2c6fef;
}
.btn-accent,
.btn-accent:hover,
.btn-accent:active,
.btn-accent.disabled,
.btn-accent[disabled] {
  background: #2c6fef;
  color: #fff;
}
.btn-accent:focus {
  color: #fff;
  background: #0277bd;
}
.btn-green {
  border-color: #00bd8e;
  background: #00bd8e;
}
.btn-green,
.btn-green:hover,
.btn-green:focus,
.btn-green:active,
.btn-green.disabled,
.btn-green[disabled] {
  color: #fff;
}
.btn-blue {
  border-color: #2c6fef !important;
  color: #2c6fef !important;
  background: #fff !important;
}
.btn-blue:hover,
.btn-blue:active,
.btn-blue:focus {
  border-color: #2c6fef !important;
  color: #2c6fef !important;
  background: #fff !important;
}
.btn-outline {
  border: 1px solid #c2c4cf;
  background: #fff;
}
.btn-outline.btn-accent {
  border-color: #039be5;
  color: #039be5;
}
.btn-outline.btn-accent:hover,
.btn-outline.btn-accent:active,
.btn-outline.btn-accent:focus {
  border-color: #0277bd;
  color: #0277bd;
  background: #fff;
}
.btn-b2-flag {
  position: relative;
  padding-left: 0;
  padding-right: 32px !important;
  color: #07a17b;
  font-size: 13px;
  line-height: 1.9em;
}
.btn-b2-flag.flag-left {
  padding-left: 32px !important;
  padding-right: 0 !important;
}
.btn-b2-flag.flag-left .b2-flag {
  left: -1px;
  right: auto;
  border-radius: 4px 0 0 4px;
}
.btn-b2-flag.disabled:not(.active):focus,
.btn-b2-flag.disabled:not(.active):hover {
  box-shadow: none;
}
.btn-b2-flag.active {
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
}
.btn-b2-flag.active-green {
  background: #00bd8e;
  color: #fff !important;
}
.btn-b2-flag.active-green:focus,
.btn-b2-flag.active-green:hover {
  color: #fff;
}
.btn-b2-flag.active,
.btn-b2-flag:focus,
.btn-b2-flag:hover {
  color: #00bd8e;
}
.btn-b2-flag .b2-flag {
  position: absolute;
  top: -1px;
  right: -1px;
  width: 32px;
  height: 32px;
  background: #00bd8e;
  border-radius: 0 4px 4px 0;
}
.btn-b2-flag .b2-flag:after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -13px;
  margin-left: -13px;
  background-image: url(/site_media/sprite-d24c59ae143/build/sprites/css-sprite-logos.png);
  background-position: -286px -30px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 26px;
  height: 26px;
}
@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx) {
  .btn-b2-flag .b2-flag:after {
    background-image: url(/site_media/sprite-d24c59ae143/build/sprites/css-sprite-logos-x2.png);
    background-size: 340px 190px;
  }
}
.btn-link {
  padding: 0;
  border: 0;
  border-radius: 0;
  background: none;
  line-height: inherit;
  font: inherit;
  vertical-align: baseline;
  color: #0277bd;
  outline: none;
}
.btn-link:hover {
  color: #039be5;
}
.btn-profile {
  color: #333;
  font-weight: bold;
}
.btn-profile:hover {
  color: #0277bd;
}
.btn-filter {
  float: left;
  height: 40px;
  color: #777;
  line-height: 40px;
  text-align: center;
}
.btn-filter:before {
  content: '';
  display: inline-block;
  width: 10px;
  height: 10px;
  margin-right: 3px;
  border: 1px solid #777;
  vertical-align: -1px;
  border-radius: 50%;
}
.btn-filter:hover {
  color: #0277bd;
}
.btn-filter.active {
  color: #333;
  font-weight: 500;
  cursor: default;
}
.btn-filter.active:before {
  border-color: #333;
  background: #333;
}
.btn-filter.active:hover {
  color: #333;
}
.btn-filter:last-child {
  text-align: right;
}
.btn-filter:first-child {
  text-align: left;
}
.btn-round {
  border-radius: 16px;
}
.btn-follow.btn-subscribed:active span,
.btn-follow.btn-subscribed:focus span,
body.no-touch .btn-follow.btn-subscribed:hover span {
  display: none;
}
.btn-follow.btn-subscribed:active .over,
.btn-follow.btn-subscribed:focus .over,
body.no-touch .btn-follow.btn-subscribed:hover .over {
  display: inline;
}
.btn-follow .over {
  display: none;
}
.btn-follow .check {
  display: inline-block;
  width: 11px;
  height: 10px;
  margin: 0 5px 0 -2px;
  background: url(/site_media/version-wmGVPkLwKe/images/sprite-contacts.png) -155px 0 no-repeat;
}
/* TODO: delete this after mobile cleanup. currently only used on mobile */
.btn-done {
  display: inline-block;
  height: 30px;
  padding: 0 12px;
  border-radius: 15px;
  font-size: 17px;
  line-height: 26px;
  text-align: center;
  vertical-align: middle;
  cursor: pointer;
}
.btn-done,
.btn-done:hover,
.btn-done:active,
.btn-done:focus {
  background: none;
  border: 2px solid #777a7a;
  color: #d8d8d8;
  text-decoration: none;
  outline: none;
}
.btn-done:active {
  background: #404040;
}
.btn-f-b:hover,
.btn-f-b:focus {
  border-color: #4264aa;
  background: #4264aa;
  color: #fff;
}
.btn-f-b,
.btn-f-b.disabled,
.btn-f-b[disabled] {
  border-color: #3b5998;
  background: #3b5998;
  color: #fff;
}
.btn-google:hover,
.btn-google:focus {
  border-color: #e15f4f;
  background: #e15f4f;
  color: #fff;
}
.btn-google,
.btn-google.disabled,
.btn-google[disabled] {
  border-color: #dd4b39;
  background: #dd4b39;
  color: #fff;
}
.btn-tw:hover,
.btn-tw:focus {
  border-color: #09bbff;
  background: #09bbff;
  color: #fff;
}
.btn-tw,
.btn-tw.disabled,
.btn-tw[disabled] {
  border-color: #00acee;
  background: #00acee;
  color: #fff;
}
button.btn,
input[type='submit'].btn {
  *padding-top: 2px;
  *padding-bottom: 2px;
}
.btn-group {
  position: relative;
  border-radius: 4px;
  box-shadow: 0 0 0 1px #f3f3f3;
  *zoom: 1;
}
.btn-group:before,
.btn-group:after {
  display: table;
  content: '';
}
.btn-group:after {
  clear: both;
}
.btn-group:before,
.btn-group:after {
  display: table;
  content: '';
}
.btn-group:after {
  clear: both;
}
.btn-group + .btn-group {
  margin-left: 5px;
}
.btn-group > .btn {
  position: relative;
  float: left;
  margin-left: -1px;
  border-color: #d4d4d4;
  background: #fff;
  color: #777;
  border-radius: 0;
}
.btn-group > .btn:first-child {
  margin-left: 0;
  border-radius: 4px 0 0 4px;
}
.btn-group > .btn:last-child {
  border-radius: 0 4px 4px 0;
}
.btn-group > .btn:hover,
.btn-group > .btn:focus,
.btn-group > .btn:active,
.btn-group > .btn.active {
  z-index: 1;
  box-shadow: none;
}
.btn-group > .btn:hover,
.btn-group > .btn:focus {
  color: #0277bd;
}
.btn-group > .btn.active {
  background: #f0f0f0;
  color: #333;
  font-weight: bold;
  cursor: default;
}
.btn-group > .dropdown-toggle {
  padding-left: 8px;
  padding-right: 8px;
  *padding-top: 4px;
  *padding-bottom: 4px;
}
.btn-group .dropdown-toggle:active,
.btn-group.open .dropdown-toggle {
  outline: 0;
}
.btn-group.open .dropdown-toggle {
  background-image: none;
  box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
}
.btn-group.open .btn.dropdown-toggle {
  background-color: #333;
}
.btn .caret {
  float: right;
  margin-top: 8px;
  margin-left: 0;
  opacity: 1;
}
.btn:hover .caret,
.open.btn-group .caret {
  border-top-color: #fff;
}
.btn-tabs {
  border-bottom: 1px solid #d4d4d4;
  font-size: 0;
}
.btn-tabs > .btn {
  position: relative;
  padding: 4px 24px;
  border: 0;
  background: none;
  color: #777;
  border-radius: 0;
}
.btn-tabs > .btn:hover,
.btn-tabs > .btn:focus,
.btn-tabs > .btn:active,
.btn-tabs > .btn.active {
  box-shadow: none;
}
.btn-tabs > .btn:hover,
.btn-tabs > .btn:focus {
  color: #0277bd;
}
.btn-tabs > .btn.active {
  padding-bottom: 5px;
  margin-bottom: -1px;
  border-bottom: 2px solid #333;
  color: #333;
  font-weight: bold;
  cursor: default;
}
.dropup,
.dropdown {
  position: relative;
  width: 100%;
}
.dropdown-toggle {
  display: inline-block;
  width: 100%;
  padding: 3px 28px 3px 8px;
  border: 1px solid #d4d4d4;
  background: #fff;
  color: #777;
  text-align: left;
  border-radius: 4px;
}
.dropdown-toggle .arrow {
  position: absolute;
  top: 50%;
  right: 8px;
  width: 0;
  height: 0;
  margin-top: -2px;
  border-width: 6px;
  border-top-color: #777;
  z-index: 1;
}
.dropdown-toggle:hover {
  color: #333;
}
.dropdown-toggle:hover .arrow {
  border-top-color: #333;
}
.dropdown-toggle.btn-link {
  padding: 0;
  border: 0;
  background: none;
  color: #0277bd;
}
.dropdown-toggle.btn-link:hover {
  color: #039be5;
}
.caret {
  display: none;
}
.dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 100;
  display: none;
  float: left;
  width: 100%;
  min-width: 176px;
  padding-bottom: 4px;
  margin: -1px 0 0 0;
  list-style: none;
  background-color: #fff;
  border: 1px solid #d4d4d4;
  border-top: 0;
  border-radius: 0 0 4px 4px;
  -webkit-background-clip: padding-box;
  background-clip: padding-box;
}
.dropdown-menu.pull-right {
  right: 0;
  left: auto;
}
.dropdown-menu.pull-right > .arrow {
  right: 3px;
  left: auto;
}
.dropdown-menu .divider {
  *width: 100%;
  height: 1px;
  margin: 4px 0;
  *margin: 4px 0;
  overflow: hidden;
  background-color: #333;
  border-bottom: 1px solid #fff;
}
.dropdown-menu a,
.dropdown-menu .btn-link,
.dropdown-menu li > strong {
  display: block;
  clear: both;
  width: 100%;
  padding: 4px 16px;
  color: #777;
  font-size: 0.9em;
  font-weight: normal;
  text-align: left;
  line-height: 1.5em;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.dropdown-menu a.hide,
.dropdown-menu .btn-link.hide,
.dropdown-menu li > strong.hide {
  display: none;
}
.dropdown-menu a.active,
.dropdown-menu .btn-link.active,
.dropdown-menu li > strong.active {
  color: #333;
  font-weight: bold;
  cursor: default;
}
.dropdown-menu a.active:hover,
.dropdown-menu .btn-link.active:hover,
.dropdown-menu li > strong.active:hover {
  color: #333;
}
.dropdown-menu li:last-child a {
  border-bottom: 0;
}
.dropdown-menu li > a:hover,
.dropdown-menu li .btn-link:hover,
.dropdown-menu .active > a,
.dropdown-menu .active > a:hover {
  color: #0277bd;
}
.open {
  *z-index: 100;
}
.open .dropdown-toggle {
  border-bottom: 0;
  color: #333;
  border-radius: 4px 4px 0 0;
}
.open .dropdown-toggle:hover .arrow {
  border-top-color: transparent;
}
.open .arrow {
  display: block;
  margin-top: -11px;
  border-bottom-color: #333;
  border-top-color: transparent;
}
.open > .dropdown-menu {
  display: block;
  color: #777;
}
.pull-right > .dropdown-menu {
  right: 0;
  left: auto;
}
.dropup .arrow {
  border-top: 0;
  border-bottom: 4px solid #333;
  content: '\2191';
}
.dropup .dropdown-menu {
  top: auto;
  bottom: 100%;
  margin-bottom: 1px;
  border-top: 1px solid #d4d4d4;
  border-radius: 4px;
}
.dropup .arrow {
  top: auto;
  bottom: -16px;
  border-bottom-color: transparent;
  border-top-color: #d4d4d4;
}
.dropdown.tipsy .dropdown-menu,
.dropup.tipsy .dropdown-menu {
  padding: 24px;
  border: 0;
  margin-top: 20px;
  border: 1px solid #d8d8d8;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
}
.dropdown.tipsy .dropdown-menu .arrow,
.dropup.tipsy .dropdown-menu .arrow {
  position: absolute;
  top: -20px;
  left: -2px;
  width: 32px;
  height: 20px;
  border: 0;
  overflow: hidden;
}
.dropdown.tipsy .dropdown-menu .arrow:before,
.dropup.tipsy .dropdown-menu .arrow:before {
  content: '';
  display: block;
  width: 20px;
  height: 20px;
  margin: 9px 0 0 6px;
  border: 1px solid #d8d8d8;
  background: #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
}
.dropdown.tipsy .dropdown-menu .arrow .arrow,
.dropup.tipsy .dropdown-menu .arrow .arrow {
  display: none;
}
.dropdown.tipsy.pull-right .dropdown-menu .arrow,
.dropup.tipsy.pull-right .dropdown-menu .arrow {
  right: -1px;
  left: auto;
}
.dropup.tipsy .dropdown-menu {
  margin: 0 0 10px 0;
}
.dropup.tipsy .dropdown-menu .arrow {
  top: auto;
  bottom: -20px;
}
.dropup.tipsy .dropdown-menu .arrow:before {
  margin-top: -11px;
}
.typeahead {
  width: auto;
  border-color: #333;
  z-index: 700;
}
.big {
  color: #1f1f1f;
  background: #fff;
}
.big a,
.big .btn-link {
  color: #005ffa;
}
.big a:hover,
.big .btn-link:hover {
  color: #6d7e8e;
}
.big a.admin-link,
.big .btn-link.admin-link {
  color: #e91e63;
}
.big a.admin-link:hover,
.big .btn-link.admin-link:hover {
  opacity: 0.7;
  color: #e91e63;
}
.big .btn-accent {
  background: #005ffa;
  border-color: #005ffa;
}
.big .btn-accent:hover {
  background: #0055e1;
  border-color: #0055e1;
}
.big a.btn-accent {
  color: #fff;
}
.big a.btn-accent:hover {
  color: #fff;
}
.big .btn-outline {
  background: #fff;
}
.big .btn-outline.btn-accent {
  border-color: #005ffa;
  color: #005ffa;
}
.big .btn-outline.btn-accent:hover {
  border-color: #0055e1;
  color: #0055e1;
  background: #fff;
}
.big .hdr-settings-menu li > a {
  color: #333;
}
.big .hdr-settings-menu li > a:hover {
  color: #039be5;
}
.big .b-box {
  display: block;
  padding: 16px 16px;
  border-radius: 10px;
  background-color: #f0f0f0;
}
.big .b-box.shadow {
  box-shadow: 0 8px 16px rgba(171, 171, 171, 0.5);
}
.big .b-box *:last-child {
  margin-bottom: 0;
}
.big .b-bg-base {
  background-color: #fff;
}
.big .b-bg-chrome {
  background-color: #f7f7f8;
}
.big .b-bg-gray-1 {
  background-color: #f9f7f2;
}
.big .b-bg-gray-2 {
  background-color: #ecedef;
}
.big .b-bg-gray-3 {
  background-color: #e7e7e9;
}
.big .b-bg-yellow {
  background: #fee829;
}
.big .b-bg-yellow-muted {
  background: #fffad4;
}
.big .b-text-primary {
  color: #1f1f1f;
}
.big .b-text-secondary {
  color: #899098;
}
.big .b-text-icons {
  color: #b6bec7;
}
.big {
  font-size: 15px;
  line-height: 1.867em;
}
.big h1,
.big h2,
.big h3,
.big h4,
.big h5 {
  margin: 0;
  color: #1f1f1f;
  font-weight: bold;
}
.big h1 {
  display: block;
  margin-bottom: 20px;
  font-size: 32px;
  line-height: 1.34em;
  font-weight: bold;
}
.big h2 {
  display: block;
  margin-bottom: 20px;
  font-size: 22px;
  line-height: 1.45em;
  font-weight: bold;
}
.big h3 {
  display: block;
  margin-bottom: 10px;
  font-size: 17px;
  line-height: 1.76em;
  font-weight: bold;
}
.big h4 {
  display: block;
  margin-bottom: 10px;
  font-size: 15px;
  line-height: 1.8em;
  font-weight: bold;
}
.big h5 {
  display: block;
  margin-bottom: 10px;
  font-size: 13px;
  line-height: 1em;
  font-weight: bold;
}
.big h5.cap {
  text-transform: uppercase;
}
.big .b-title-section {
  display: block;
  margin-bottom: 20px;
  font-size: 32px;
  line-height: 1.34em;
  font-weight: bold;
}
.big .b-title-default {
  display: block;
  margin-bottom: 20px;
  font-size: 22px;
  line-height: 1.45em;
  font-weight: bold;
}
.big .b-title-body {
  display: block;
  margin-bottom: 10px;
  font-size: 17px;
  line-height: 1.76em;
  font-weight: bold;
}
.big .b-title-body-small {
  display: block;
  margin-bottom: 10px;
  font-size: 15px;
  line-height: 1.8em;
  font-weight: bold;
}
.big .b-title-small {
  display: block;
  margin-bottom: 10px;
  font-size: 13px;
  line-height: 1em;
  font-weight: bold;
}
.big .b-title-small-cap {
  display: block;
  margin-bottom: 10px;
  font-size: 13px;
  line-height: 1em;
  font-weight: bold;
  text-transform: uppercase;
}
.big .b-title-meta {
  display: block;
  margin-bottom: 12px;
  font-size: 11px;
  line-height: 1em;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  font-weight: 500;
}
.big .b-title-marketing-xxl {
  display: block;
  margin-bottom: 20px;
  font-size: 78px;
  font-weight: bold;
  line-height: 1.1em;
}
.big .b-title-marketing-xl {
  display: block;
  margin-bottom: 40px;
  font-size: 45px;
  font-weight: bold;
  line-height: 1.156em;
}
.big p {
  margin-bottom: 20px;
}
.big [class*='b-paragraph-'] > *:last-child {
  margin-bottom: 0;
}
.big .b-paragraph-l {
  font-size: 17px;
  line-height: 1.71em;
}
.big .b-paragraph-m {
  font-size: 15px;
  line-height: 1.867em;
}
.big .b-paragraph-s {
  font-size: 13px;
  line-height: 1.923em;
  margin-bottom: 16px;
}
.big [class*='b-readable-'] {
  max-width: 100%;
}
.big [class*='b-readable-'] > *:last-child {
  margin-bottom: 0;
}
.big .b-readable-l {
  width: 500px;
}
.big .b-readable-m {
  width: 400px;
}
.big .b-readable-s {
  width: 300px;
}
.big .b-readable-xs {
  width: 200px;
  font-size: 13px;
  line-height: 1.923em;
}
.big [class*='b-vspace-'] *:last-child {
  margin-bottom: 0;
}
.big .b-vspace-xxs {
  margin-bottom: 8px;
}
.big .b-vspace-xs {
  margin-bottom: 12px;
}
.big .b-vspace-s {
  margin-bottom: 16px;
}
.big .b-vspace-m {
  margin-bottom: 20px;
}
.big .b-vspace-l {
  margin-bottom: 24px;
}
.big .b-vspace-xl {
  margin-bottom: 40px;
}
.big .b-vspace-xxl {
  margin-bottom: 48px;
}
.big .b-divider {
  position: relative;
  width: 100%;
  height: 60px;
}
.big .b-divider:after {
  content: '';
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 1px;
  border-bottom: 1px solid #c2c4cf;
}
.big .b-vspace-0 {
  margin-bottom: 0;
}
.css-sprite-global {
  background-image: url(/site_media/sprite-456ffa33a93/build/sprites/css-sprite-global.png);
}
@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx) {
  .css-sprite-global {
    background-image: url(/site_media/sprite-456ffa33a93/build/sprites/css-sprite-global-x2.png);
    background-size: 300px 234px;
  }
}
.css-sprite-third-party {
  background-image: url(/site_media/sprite-dabccecf543/build/sprites/css-sprite-third-party.png);
}
@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx) {
  .css-sprite-third-party {
    background-image: url(/site_media/sprite-dabccecf543/build/sprites/css-sprite-third-party-x2.png);
    background-size: 142px 122px;
  }
}
.css-sprite-solvables {
  background-image: url(/site_media/sprite-4bc4961b973/build/sprites/css-sprite-solvables.png);
}
@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx) {
  .css-sprite-solvables {
    background-image: url(/site_media/sprite-4bc4961b973/build/sprites/css-sprite-solvables-x2.png);
    background-size: 335px 245px;
  }
}
.css-sprite-practice {
  background-image: url(/site_media/sprite-a0d1f73c8a3/build/sprites/css-sprite-practice.png);
}
@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx) {
  .css-sprite-practice {
    background-image: url(/site_media/sprite-a0d1f73c8a3/build/sprites/css-sprite-practice-x2.png);
    background-size: 63px 34px;
  }
}
.css-sprite-chevrons {
  background-image: url(/site_media/sprite-578ac9c4513/build/sprites/css-sprite-chevrons.png);
}
@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx) {
  .css-sprite-chevrons {
    background-image: url(/site_media/sprite-578ac9c4513/build/sprites/css-sprite-chevrons-x2.png);
    background-size: 98px 71.5px;
  }
}
.css-sprite-logos {
  background-image: url(/site_media/sprite-d24c59ae143/build/sprites/css-sprite-logos.png);
}
@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx) {
  .css-sprite-logos {
    background-image: url(/site_media/sprite-d24c59ae143/build/sprites/css-sprite-logos-x2.png);
    background-size: 340px 190px;
  }
}
@font-face {
  font-family: Soleil;
  font-display: swap;
  src: url(/site_media/version-1/fonts/soleil/soleil-regular-webfont.woff2) format('woff2');
}
@font-face {
  font-family: Soleil;
  font-weight: bold;
  font-display: swap;
  src: url(/site_media/version-1/fonts/soleil/soleil-bold-webfont.woff2) format('woff2');
}
@font-face {
  font-family: Soleil;
  font-style: italic;
  font-display: swap;
  src: url(/site_media/version-1/fonts/soleil/soleil-italic-webfont.woff2) format('woff2');
}
@font-face {
  font-family: Soleil;
  font-weight: 600;
  font-display: swap;
  src: url(/site_media/version-1/fonts/soleil/soleil-semibold-webfont.woff2) format('woff2');
}
@font-face {
  font-family: 'Source Code Pro';
  font-display: swap;
  src: url(/site_media/version-1/fonts/source-code-pro/source-code-pro-regular.woff2) format('woff2');
}
@font-face {
  font-family: 'Source Code Pro';
  font-weight: bold;
  font-display: swap;
  src: url(/site_media/version-1/fonts/source-code-pro/source-code-pro-bold.woff2) format('woff2');
}
@font-face {
  font-family: 'Source Code Pro';
  font-style: italic;
  font-display: swap;
  src: url(/site_media/version-1/fonts/source-code-pro/source-code-pro-italic.woff2) format('woff2');
}
@font-face {
  font-family: 'Source Code Pro';
  font-weight: bold;
  font-style: italic;
  font-display: swap;
  src: url(/site_media/version-1/fonts/source-code-pro/source-code-pro-bolditalic.woff2) format('woff2');
}
html {
  touch-action: manipulation;
}
body {
  margin: 0;
  min-width: 1200px;
  padding-top: 45px;
  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 15px;
  line-height: 1.6em;
  color: #161616;
  background-color: #f7f7f7;
}
@media screen and (min-width: 700px) and (max-width: 1200px) {
  body {
    min-width: 960px;
  }
}
body #wrapper,
body.active #wrapper {
  padding-top: 0;
  padding-bottom: 0;
}
body,
body * {
  box-sizing: border-box;
}
body.fonts {
  font-family: 'Soleil', Arial, sans-serif;
}
body.fonts input,
body.fonts button,
body.fonts select,
body.fonts textarea {
  font-family: 'Soleil', Arial, sans-serif;
}
html.cropped,
body.cropped {
  position: relative;
  height: 100%;
  overflow: hidden;
}
body.disabled:before {
  content: '';
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.5);
  z-index: 1000;
}
input::-ms-clear {
  display: none;
}
select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  display: inline-block;
  padding: 2px 28px 3px 8px;
  color: #777;
  background: #fff url(/site_media/version-d50141a421/images/dropdown-chevron.png) right 8px center no-repeat;
  border: 1px solid #d4d4d4;
  cursor: pointer;
  border-radius: 4px;
}
select:hover {
  color: #333;
}
@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx) {
  select {
    background-image: url(/site_media/version-0223ff3eba/images/dropdown-chevron-2x.png);
    background-size: 12px 6px;
  }
}
/* IE 10+ */
select::-ms-expand {
  display: none;
}
body.ie-6 select,
body.ie-7 select,
body.ie-8 select,
body.ie-9 select {
  background-image: none;
  padding-top: 3px;
  padding-right: 4px;
}
.container {
  width: 1200px;
  margin-right: auto;
  margin-left: auto;
  padding: 0 12px;
  *zoom: 1;
}
.container:before,
.container:after {
  display: table;
  content: '';
}
.container:after {
  clear: both;
}
.container:before,
.container:after {
  display: table;
  content: '';
}
.container:after {
  clear: both;
}
@media screen and (min-width: 700px) and (max-width: 1200px) {
  .container {
    width: 960px;
    margin-right: auto;
    margin-left: auto;
    padding: 0 8px;
    *zoom: 1;
  }
  .container:before,
  .container:after {
    display: table;
    content: '';
  }
  .container:after {
    clear: both;
  }
  .container:before,
  .container:after {
    display: table;
    content: '';
  }
  .container:after {
    clear: both;
  }
}
.row {
  display: block;
  float: left;
  clear: left;
  width: 100%;
  margin: 0;
}
.row.hide {
  display: none;
}
.col {
  float: left;
  margin-right: 24px;
}
.col.col-padded {
  padding: 24px;
}
.col.col-last,
.col:last-child {
  margin-right: 0;
}
.col.col-right {
  float: right;
  margin-right: 0;
  margin-left: 24px;
}
.col.col-right.col-last {
  margin-left: 0;
}
.col-1 {
  width: 76px;
}
.col-2 {
  width: 176px;
}
.col-3 {
  width: 276px;
}
.col-4 {
  width: 376px;
}
.col-5 {
  width: 476px;
}
.col-6 {
  width: 576px;
}
.col-7 {
  width: 676px;
}
.col-8 {
  width: 776px;
}
.col-9 {
  width: 876px;
}
.col-10 {
  width: 976px;
}
.col-11 {
  width: 1076px;
}
.col-12 {
  width: 1176px;
  margin-right: 0;
}
@media screen and (min-width: 700px) and (max-width: 1200px) {
  .col {
    margin-right: 16px;
  }
  .col.col-right {
    margin-left: 16px;
  }
  .col-1 {
    width: 64px;
  }
  .col-2 {
    width: 144px;
  }
  .col-3 {
    width: 224px;
  }
  .col-4 {
    width: 304px;
  }
  .col-5 {
    width: 384px;
  }
  .col-6 {
    width: 464px;
  }
  .col-7 {
    width: 544px;
  }
  .col-8 {
    width: 624px;
  }
  .col-9 {
    width: 704px;
  }
  .col-10 {
    width: 784px;
  }
  .col-11 {
    width: 864px;
  }
  .col-12 {
    width: 944px;
    margin-right: 0;
  }
}
h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  font-family: 'Soleil', Arial, sans-serif;
  color: #333;
  text-rendering: optimizelegibility;
}
h1 small,
h2 small,
h3 small,
h4 small,
h5 small,
h6 small {
  font-weight: normal;
  color: #f7f7f7;
}
h1 {
  margin-bottom: 0.26666667em;
  font-weight: 500;
  font-size: 28px;
  line-height: 1.6em;
}
h1 small {
  font-size: 22px;
}
h2 {
  margin-bottom: 0.23333333em;
  font-weight: 500;
  font-size: 22px;
  line-height: 1.4em;
}
h2 small {
  font-size: 15px;
}
h3,
h5,
h6 {
  margin-bottom: 0.25em;
  font-weight: 400;
  font-size: 15px;
  line-height: 1.5em;
  color: #161616;
}
h3 small,
h5 small,
h6 small {
  font-size: 15px;
}
h4 {
  margin-bottom: 0.25em;
  font-size: 20px;
  line-height: 1.5em;
  font-weight: 500;
  color: #161616;
}
.section-header {
  border-bottom: 1px solid #777;
  padding-bottom: 5px;
  margin-bottom: 16px;
}
.section-header.sub {
  border-bottom-color: #bbb;
}
.section-header h1,
.section-header h2,
.section-header h4 {
  float: left;
}
.section-header h3,
.section-header a {
  float: right;
  margin-top: 6px;
}
.section-header h1,
.section-header h2,
.section-header h3,
.section-header h4 {
  margin-bottom: 16px;
}
.section-header a {
  margin-top: 8px;
}
.section-header h1 {
  font-size: 22px;
  line-height: 1.4em;
  font-weight: 500;
}
.admin-links a,
.admin_links a,
.admin-links .btn-link,
.admin_links .btn-link {
  color: #e91e63;
}
.admin-links a:hover,
.admin_links a:hover,
.admin-links .btn-link:hover,
.admin_links .btn-link:hover {
  color: #aa1145;
}
button {
  outline: none;
}
.table-wrapper {
  margin-bottom: 1.6em;
  overflow-x: auto;
}
.table-wrapper::-webkit-scrollbar {
  height: 8px;
}
.table-wrapper::-webkit-scrollbar-track {
  background: #f0f0f0;
  border-radius: 4px;
}
.table-wrapper::-webkit-scrollbar-thumb {
  background: #d8d8d8;
  border-radius: 4px;
}
.table-wrapper .table {
  margin-bottom: 0;
}
.table-wrapper .table td,
.table-wrapper .table tr:first-child td {
  border: 1px solid #333;
}
.table-wrapper.disable-vertical-lines .table td {
  border-width: 1px 0 0 0;
}
.table-wrapper.disable-vertical-lines .table tr:first-child td {
  border: 0;
}
table.table {
  border: 1px solid #262626;
  width: auto;
}
table.table tr:first-child td {
  border: 0;
}
.image-caption {
  display: block;
  clear: both;
  margin-bottom: 24px;
  position: relative;
}
.image-caption.center {
  text-align: center;
}
.image-caption.left {
  float: left;
  margin-right: 24px;
}
.image-caption.right {
  float: right;
  margin-left: 24px;
}
.image-caption.left,
.image-caption.right {
  display: table;
}
.image-caption.left .zoomable-image,
.image-caption.right .zoomable-image {
  display: table-row;
}
.image-caption.left .caption,
.image-caption.right .caption {
  display: table-caption;
  caption-side: bottom;
}
.caption {
  display: block;
  margin-top: 8px;
  color: #919191;
  font-size: 12px;
  font-style: oblique;
  line-height: 1.4em;
}
blockquote {
  margin: 0 0 1.6em 0;
  padding: 16px;
  background: #fbfbfb;
  clear: both;
  box-shadow: none;
  border: 1px solid #d4d4d4;
  box-shadow: 0 0 0 1px #f3f3f3;
}
blockquote.pull-right {
  float: right;
}
blockquote.pull-right p,
blockquote.pull-right small {
  text-align: right;
}
blockquote p {
  margin-bottom: 0;
}
blockquote small {
  display: block;
  line-height: 1.6em;
}
blockquote small:before {
  content: '\2014 \00A0';
}
q:before,
q:after,
blockquote:before,
blockquote:after {
  content: '';
}
.anchor:before {
  content: '';
  display: block;
  height: 61px;
  margin-top: -61px;
  visibility: hidden;
}
.blurry {
  -webkit-filter: blur(5px);
  filter: blur(5px);
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}
body.ie.blurry {
  background: rgba(0, 0, 0, 0.5);
}
.vertical-scrollbar {
  overflow-x: hidden;
  overflow-y: auto;
}
.vertical-scrollbar::-webkit-scrollbar {
  width: 8px;
}
.vertical-scrollbar::-webkit-scrollbar-track {
  background: #f0f0f0;
  border-radius: 4px;
}
.vertical-scrollbar::-webkit-scrollbar-thumb {
  background: #d8d8d8;
  border-radius: 4px;
}
wbr {
  display: inline-block;
}
body > .autosizejs {
  top: -1px !important;
}
.rsaquo {
  display: inline-block;
  margin-top: -0.2em;
  font-size: 1.5em;
  line-height: 1em;
  vertical-align: middle;
  font-weight: normal;
  font-family: Arial, sans-serif;
}
body.ie .rsaquo {
  margin-bottom: 1em;
  line-height: 0.5em;
  font-size: 2em;
  vertical-align: middle;
}
body.no-js .cmp-deferred .js {
  display: none;
}
body.no-js .cmp-deferred .no-js {
  display: none;
  float: left;
  clear: left;
  width: 100%;
}
body.js .cmp-deferred .js {
  display: block;
}
body.js .cmp-deferred .spinner {
  margin: 20px;
}
body.js .cmp-deferred .no-js {
  display: none;
}
.no_js_hider {
  display: none;
}
.close {
  float: right;
  text-indent: -9999px;
  cursor: pointer;
  background-image: url(/site_media/sprite-456ffa33a93/build/sprites/css-sprite-global.png);
  background-position: -284px -115px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: inline-block;
  width: 15px;
  height: 15px;
  -webkit-transition: opacity 100ms linear;
  transition: opacity 100ms linear;
}
@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx) {
  .close {
    background-image: url(/site_media/sprite-456ffa33a93/build/sprites/css-sprite-global-x2.png);
    background-size: 300px 234px;
  }
}
.close:hover {
  opacity: 0.8;
}
button.close {
  padding: 0;
  border: 0;
  background-color: transparent;
  outline: none;
}
.streak-icon {
  background-position: 0px -122px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 65px;
  height: 112px;
}
.arrow {
  display: block;
  width: 0;
  height: 0;
  border: 8px solid transparent;
}
.arrow.large {
  border-width: 12px;
}
.arrow.small {
  border-width: 5px;
}
form ul.errorlist {
  list-style: none;
  margin: 0;
  font-size: 0.9em;
  color: #e91e63;
}
form ul.errorlist a {
  color: #e91e63;
  text-decoration: underline;
}
form ul.errorlist a:hover {
  color: #d81557;
  text-decoration: none;
}
form ul.errorlist code {
  border: 0;
  background: transparent;
  color: #e91e63;
  font-size: 0.9em;
  font-weight: bold;
}
form label span.req {
  display: none;
}
.modal-open .dropdown-menu {
  z-index: 800;
}
.modal-open .dropdown.open {
  *z-index: 800;
}
.modal-open .popover {
  z-index: 1000;
}
.modal-open .tooltip {
  z-index: 1000;
}
.modal-bg {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  overflow: auto;
  z-index: 699;
  -webkit-overflow-scrolling: touch;
  background: rgba(0, 0, 0, 0.5);
}
.modal {
  position: relative;
  width: 524px;
  padding: 48px 24px;
  margin: 69px auto;
  background-color: #fff;
  z-index: 700;
  *zoom: 1;
}
.modal:before,
.modal:after {
  display: table;
  content: '';
}
.modal:after {
  clear: both;
}
.modal:before,
.modal:after {
  display: table;
  content: '';
}
.modal:after {
  clear: both;
}
.modal-header h1,
.modal-header h2,
.modal-header h3,
.modal-header h4 {
  padding-bottom: 24px;
  border-bottom: 1px solid #333;
  margin: 0;
  font-size: 22px;
  font-weight: 400;
  line-height: 1.4em;
}
.modal-header .close {
  position: absolute;
  top: 24px;
  right: 24px;
}
.modal-body {
  float: left;
  clear: left;
  width: 100%;
  margin-top: 24px;
  color: #333;
  font-size: 17px;
}
.modal-body ul {
  text-align: left;
}
.modal-body li {
  margin-bottom: 0.8em;
}
.modal-form {
  margin-bottom: 0;
}
.modal-footer {
  float: left;
  clear: left;
  width: 100%;
  text-align: center;
}
.modal-footer .btn {
  width: 100%;
  margin-top: 24px;
}
.modal-footer .btn.hide {
  display: none;
}
.modal-footer .btn-light {
  background: none;
  font-weight: bold;
}
.modal-footer .btn-group .btn + .btn {
  margin-left: -1px;
}
#system-msgs {
  max-width: 100%;
}
#system-msgs .alert {
  margin: 0;
  padding: 16px;
  word-break: break-word;
}
#system-msgs .alert ul {
  margin-bottom: 0;
}
#system-msgs .alert a {
  color: #0277bd;
  text-decoration: none;
}
#system-msgs .alert a:hover {
  color: #039be5;
}
.logged-out-home-alerts {
  margin-top: 21px;
}
body.ie-7 {
  padding-top: 30px;
}
#wrapper {
  clear: both;
  background: none;
  border: none;
  position: relative;
}
body.error {
  background-color: #fff;
}
.error-section,
.error-section.col {
  margin-top: 24px;
}
.error-section p {
  float: left;
  margin-top: 3px;
  font-size: 16px;
}
.error-section img {
  display: block;
  margin: 48px auto;
}
.markdown-table pre {
  display: inline-block;
  margin: 0;
  padding: 0 5px;
  color: #666;
  border: 1px solid #e1e1e8;
}
.markdown-table ul,
.markdown-table ol {
  margin: 0;
  list-style-position: inside;
}
.dim {
  opacity: 0.5;
}
.syntax .c {
  color: #999;
}
.syntax .mi {
  color: #099;
}
.syntax .nb {
  color: #0086b3;
}
.syntax .k {
  color: #333;
  font-weight: bold;
}
.syntax .nf {
  color: #900;
  font-weight: bold;
}
.syntax .sd {
  color: #d14;
}
.syntax .bp {
  color: #666;
}
.syntax .s {
  color: #e91e63;
}
.katex-display {
  display: block;
  overflow: auto;
  overflow-x: auto;
  overflow-y: hidden;
  text-align: center;
  outline: none;
}
.katex-display::-webkit-scrollbar {
  height: 8px;
}
.katex-display::-webkit-scrollbar-track {
  background: #f0f0f0;
  border-radius: 4px;
}
.katex-display::-webkit-scrollbar-thumb {
  background: #d8d8d8;
  border-radius: 4px;
}
.katex-display > .katex {
  margin: 1px;
}
.katex-display {
  /* Margin getting overridden by .big rules in Daily Challenges. */
  margin: 1em 0 !important;
}
span.latex-raw-inline {
  color: #919191;
}
div.latex-raw-block {
  display: block;
  color: #919191;
  text-align: center;
}
.select-box {
  margin-bottom: 16px;
}
.select-box select {
  display: none;
}
.icon,
[class^='icon-'],
[class*=' icon-'] {
  display: inline-block;
  line-height: 14px;
  vertical-align: text-top;
}
.icon-chrome {
  width: 16px;
  height: 16px;
  background: url(/site_media/version-bcswd3bq3s/images/icon-chrome.png) 0 0 no-repeat;
  background-size: 16px 16px;
}
.signup-modal .modal-bg {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 899;
  background: rgba(0, 0, 0, 0.5);
}
.signup-modal .modal-content {
  position: fixed;
  top: 50%;
  left: 50%;
  width: 400px;
  padding: 48px 24px;
  margin: -150px 0 0 -200px;
  background: #fff;
  z-index: 900;
}
.signup-modal .buttons {
  margin-bottom: 24px;
}
.signup-modal .btn {
  display: block;
}
.signup-modal .or {
  display: block;
  margin: 16px 0;
  color: #919191;
  text-align: center;
}
.signup-modal p {
  margin: 0;
}
@-webkit-keyframes anim-wiggle-less {
  50% {
    -webkit-transform: rotate(-1deg);
    transform: rotate(-1deg);
  }
  100% {
    -webkit-transform: rotate(1deg);
    transform: rotate(1deg);
  }
}
@keyframes anim-wiggle-less {
  50% {
    -webkit-transform: rotate(-1deg);
    transform: rotate(-1deg);
  }
  100% {
    -webkit-transform: rotate(1deg);
    transform: rotate(1deg);
  }
}
@-webkit-keyframes anim-wiggle {
  50% {
    -webkit-transform: rotate(-2deg);
    transform: rotate(-2deg);
  }
  100% {
    -webkit-transform: rotate(2deg);
    transform: rotate(2deg);
  }
}
@keyframes anim-wiggle {
  50% {
    -webkit-transform: rotate(-2deg);
    transform: rotate(-2deg);
  }
  100% {
    -webkit-transform: rotate(2deg);
    transform: rotate(2deg);
  }
}
@-webkit-keyframes anim-wiggle-more {
  50% {
    -webkit-transform: rotate(-4deg);
    transform: rotate(-4deg);
  }
  100% {
    -webkit-transform: rotate(4deg);
    transform: rotate(4deg);
  }
}
@keyframes anim-wiggle-more {
  50% {
    -webkit-transform: rotate(-4deg);
    transform: rotate(-4deg);
  }
  100% {
    -webkit-transform: rotate(4deg);
    transform: rotate(4deg);
  }
}
.wiggle-less {
  -webkit-animation: anim-wiggle-less 300ms infinite;
  animation: anim-wiggle-less 300ms infinite;
}
.wiggle {
  -webkit-animation: anim-wiggle 300ms infinite;
  animation: anim-wiggle 300ms infinite;
}
.wiggle-more {
  -webkit-animation: anim-wiggle-more 300ms infinite;
  animation: anim-wiggle-more 300ms infinite;
}
.pulse-less {
  -webkit-animation: anim-pulse-less 800ms infinite;
  animation: anim-pulse-less 800ms infinite;
}
@-webkit-keyframes anim-pulse-less {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0.8;
  }
  100% {
    opacity: 1;
  }
}
@keyframes anim-pulse-less {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0.8;
  }
  100% {
    opacity: 1;
  }
}
.pulse {
  -webkit-animation: anim-pulse 800ms infinite;
  animation: anim-pulse 800ms infinite;
}
@-webkit-keyframes anim-pulse {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0.6;
  }
  100% {
    opacity: 1;
  }
}
@keyframes anim-pulse {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0.6;
  }
  100% {
    opacity: 1;
  }
}
.pulse-more {
  -webkit-animation: anim-pulse-more 800ms infinite;
  animation: anim-pulse-more 800ms infinite;
}
@-webkit-keyframes anim-pulse-more {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0.4;
  }
  100% {
    opacity: 1;
  }
}
@keyframes anim-pulse-more {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0.4;
  }
  100% {
    opacity: 1;
  }
}
.sticky.stuck {
  position: fixed;
  top: 45px;
}
.dropdown.more-menu {
  width: auto;
}
.dropdown.more-menu .dots em {
  background-position: -193px -140px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 12px;
  height: 15px;
}
.dropdown.more-menu.open .dots em {
  background-position: -207px -140px;
}
.dropdown.more-menu .dropdown-menu form {
  margin-bottom: 0;
}
.dropdown.more-menu .dropdown-menu input {
  width: 100%;
  margin-bottom: 0;
}
.dropdown.more-menu .btn-fave,
.dropdown.more-menu .btn-reshare,
.dropdown.more-menu .btn-save {
  margin-left: 0;
}
.dropdown.more-menu .btn-fave em,
.dropdown.more-menu .btn-reshare em,
.dropdown.more-menu .btn-save em {
  display: none;
}
.dropdown.more-menu .btn-fave .count,
.dropdown.more-menu .btn-reshare .count {
  display: none;
}
.dropdown.more-menu .btn-fave .all-text,
.dropdown.more-menu .btn-reshare .all-text,
.dropdown.more-menu .btn-fave .label,
.dropdown.more-menu .btn-reshare .label {
  position: static;
  opacity: 1;
  -webkit-transition: none;
  transition: none;
}
.dropdown.more-menu .btn-save {
  text-align: left;
}
.dropdown.more-menu .btn-save .all-text {
  display: none;
}
.dropdown.more-menu .btn-save .new-text {
  display: block;
}
#custom-front-chat-launcher {
  width: 44px;
  height: 44px;
  background: #fff;
  border-radius: 50%;
  box-shadow: 0 1px 6px rgba(0, 0, 0, 0.06), 0 2px 32px rgba(0, 0, 0, 0.16);
}
#custom-front-chat-launcher.active .open {
  opacity: 0;
  -webkit-transform: rotate(30deg) scale(0);
  transform: rotate(30deg) scale(0);
}
#custom-front-chat-launcher.active .close {
  opacity: 1;
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
}
#custom-front-chat-launcher.loading .open {
  display: none;
}
#custom-front-chat-launcher.loading .spinner {
  visibility: visible;
}
#custom-front-chat-launcher span {
  display: inline-block;
  position: absolute;
}
#custom-front-chat-launcher .open,
#custom-front-chat-launcher .close {
  content: '';
  top: 50%;
  left: 50%;
  -webkit-transition: -webkit-transform 0.16s linear, transform 0.16s linear, opacity 0.08s linear;
  transition: -webkit-transform 0.16s linear, transform 0.16s linear, opacity 0.08s linear;
}
#custom-front-chat-launcher .open {
  opacity: 1;
  margin: -13.5px 0 0 -17px;
  background-position: -244px -42px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 34px;
  height: 27px;
  -webkit-transform: rotate(0deg) scale(1);
  transform: rotate(0deg) scale(1);
}
#custom-front-chat-launcher .close {
  opacity: 0;
  margin: -7.5px 0 0 -7.5px;
  background-position: -284px -132px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 15px;
  height: 15px;
  -webkit-transform: rotate(-30deg);
  transform: rotate(-30deg);
}
#custom-front-chat-launcher .unread-message-counter {
  display: none;
  width: 18px;
  height: 18px;
  line-height: 18px;
  font-size: 12px;
  font-weight: 500;
  text-align: center;
  background: #e91e63;
  color: #fff;
  border-radius: 50%;
  right: -4px;
  top: -4px;
}
#custom-front-chat-launcher .spinner {
  visibility: hidden;
  position: absolute;
  left: 50%;
  top: 50%;
  margin: -8px 0 -8px;
}
body:not(.b2) #custom-front-chat-launcher {
  display: block;
}
body:not(.b2) #custom-front-chat-launcher.hide {
  display: none;
}
body.b2 #custom-front-chat-launcher {
  display: none;
  visibility: hidden;
}
#front-chat-container {
  z-index: 298 !important;
}
.site-maint-banner {
  margin: 0;
  padding: 16px;
  border-bottom: 1px solid #d4d4d4;
  background: #fff7e6;
  text-align: center;
  line-height: 1.3em;
}
@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx) {
  .icon-chrome {
    background-image: url(/site_media/version-GroklOCZm8/images/icon-chrome-2x.png);
  }
}
@-webkit-keyframes animrotate {
  from {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(-360deg);
    transform: rotate(-360deg);
  }
}
@keyframes animrotate {
  from {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(-360deg);
    transform: rotate(-360deg);
  }
}
.b-markers {
  text-align: center;
}
.b-markers span {
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: 0 8px;
  border-radius: 100%;
  background: #777;
}
.b-markers span.active {
  background: #d8d8d8;
}
.lottie-container svg > g {
  fill: transparent;
  stroke: transparent;
}
.privacy-banner {
  position: fixed;
  z-index: 2700;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 107px;
  background: #f7f7f7;
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
}
.privacy-banner .container {
  display: flex;
  align-items: center;
  max-width: 100%;
  height: 100%;
}
.privacy-banner p {
  margin: 0;
  font-size: 16px;
  line-height: 1.37em;
  color: rgba(0, 0, 0, 0.55);
}
.privacy-banner p b {
  font-weight: 600;
  color: #000;
}
.privacy-banner .actions {
  display: flex;
  align-items: center;
  white-space: nowrap;
}
.privacy-banner .actions .btn {
  width: 160px;
  height: 32px;
  margin: 0 32px 0 64px;
  background-color: #fff;
  border-radius: 6px;
  border: 1px solid #ddd;
  font-weight: 600;
  font-size: 14px;
  line-height: 1em;
  color: #333;
}
.privacy-banner .actions a {
  order: 2;
  font-size: 14px;
  line-height: 1.71em;
  color: #919191;
  text-decoration: underline;
}
.privacy-banner .close {
  position: absolute;
  z-index: 1;
  right: 16px;
  top: 16px;
  opacity: 0.4;
}
@media (max-width: 960px) {
  .privacy-banner {
    height: auto;
  }
  .privacy-banner .container {
    display: block;
    width: 100%;
    padding: 24px;
  }
  .privacy-banner p {
    font-size: 14px;
  }
  .privacy-banner p b {
    display: block;
    padding: 0 40px 6px 0;
    font-size: 16px;
  }
  .privacy-banner .actions {
    display: flex;
    align-items: center;
    justify-content: center;
    padding-top: 20px;
    white-space: normal;
  }
  .privacy-banner .actions a {
    order: initial;
    margin-right: 40px;
    font-size: 12px;
    color: rgba(0, 0, 0, 0.4);
    white-space: nowrap;
  }
  .privacy-banner .actions .btn {
    margin: 0;
    font-size: 12px;
    white-space: nowrap;
  }
  .privacy-banner .actions a + .btn {
    width: 112px;
  }
}
@media (max-width: 320px) {
  .privacy-banner .actions {
    display: block;
    text-align: center;
  }
  .privacy-banner .actions a {
    display: inline-block;
    margin: 0 0 24px 0;
  }
  .privacy-banner .actions .btn {
    display: block;
    width: 160px;
    max-width: 100%;
    margin: 0 auto;
  }
}
.dropdown.more-menu {
  margin-top: 5px;
}
.dropdown.more-menu .dots {
  float: left;
  width: auto;
  padding: 0;
  border: 0;
  margin-left: 16px;
}
.dropdown.more-menu .dots:hover em {
  background-position: -207px -140px;
}
.dropdown.more-menu .dropdown-menu {
  right: -9px;
}
.dropdown.more-menu .dropdown-menu a,
.dropdown.more-menu .dropdown-menu .btn-link {
  width: 100%;
  padding: 4px 0;
  color: #777;
  text-align: left;
  font-size: 14px;
}
.dropdown.more-menu .dropdown-menu a:hover,
.dropdown.more-menu .dropdown-menu .btn-link:hover {
  color: #0277bd;
}
.dropdown.more-menu .dropdown-menu .arrow {
  top: -9px;
}
.dropdown.more-menu .direct-link span {
  color: #919191;
  font-size: 13px;
}
.dropdown.more-menu .nf-btn-action {
  font-size: 15px;
  line-height: 1.5em;
}
.dropdown.more-menu .btn-save {
  float: none;
}
select,
textarea,
input[type='text'],
input[type='password'],
input[type='datetime'],
input[type='datetime-local'],
input[type='date'],
input[type='month'],
input[type='time'],
input[type='week'],
input[type='number'],
input[type='email'],
input[type='url'],
input[type='search'],
input[type='tel'],
input[type='color'],
.uneditable-input {
  height: 32px;
}
#confirm-modal.no-title {
  padding: 24px;
}
#confirm-modal.no-title .modal-header {
  display: none;
}
#confirm-modal.no-title .modal-body {
  margin-top: 0;
}
#confirm-modal .modal-header h3 {
  border-bottom: 0;
  text-align: center;
}
#confirm-modal .modal-footer .btn {
  width: 45%;
  margin-top: 0;
  min-width: 120px;
}
#confirm-modal .modal-footer .btn.cancel {
  margin-right: 5%;
}
#confirm-modal .modal-footer .btn.confirm {
  margin-left: 5%;
}
#footer-notifs {
  position: fixed;
  right: 0;
  bottom: 0;
  height: 84px;
  z-index: 299;
}
#custom-front-chat-launcher {
  cursor: pointer;
  position: absolute;
  top: 20px;
  right: 20px;
  -webkit-transition: box-shadow 100ms ease-in-out;
  transition: box-shadow 100ms ease-in-out;
}
#custom-front-chat-launcher:hover {
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.09), 0 4px 40px rgba(0, 0, 0, 0.24);
}
body:not(.b2) #custom-front-chat-launcher {
  -webkit-animation:    1s custom-front-chat-launcher-hidden 0s ease,
                 0.25s custom-front-chat-launcher-appear 1s ease;
  animation:    1s custom-front-chat-launcher-hidden 0s ease,
                 0.25s custom-front-chat-launcher-appear 1s ease;
}
body.b2 #custom-front-chat-launcher.active {
  display: block;
  visibility: visible;
  -webkit-animation: 250ms custom-front-chat-launcher-appear ease;
  animation: 250ms custom-front-chat-launcher-appear ease;
}
@-webkit-keyframes custom-front-chat-launcher-hidden {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@keyframes custom-front-chat-launcher-hidden {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@-webkit-keyframes custom-front-chat-launcher-appear {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.5);
    transform: scale(0.5);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}
@keyframes custom-front-chat-launcher-appear {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.5);
    transform: scale(0.5);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}
.privacy-banner .actions a:hover {
  opacity: 0.8;
}
.spinner {
  display: inline-block;
  width: 16px;
  height: 16px;
  background: url(/site_media/version-0yVF3fCUUB/images/spinner-dark.gif) 0 0 no-repeat;
}
.spinner.spinner-light {
  background: url(/site_media/version-bRWpmJed3h/images/spinner-light.gif) 0 0 no-repeat;
}
@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx) {
  .spinner {
    background-image: url(/site_media/version-CKzdNqPWJ7/images/spinner-dark-2x.gif);
    background-size: 16px 16px;
  }
  .spinner.spinner-light {
    background: url(/site_media/version-bRWpmJed3h/images/spinner-light.gif) 0 0 no-repeat;
  }
}
.css-sprite-paywall {
  background-image: url(/site_media/sprite-ab25c0a9e13/build/sprites/css-sprite-paywall.png);
}
@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx) {
  .css-sprite-paywall {
    background-image: url(/site_media/sprite-ab25c0a9e13/build/sprites/css-sprite-paywall-x2.png);
    background-size: 772px 710.5px;
  }
}
.css-sprite-topic-icons-square {
  background-image: url(/site_media/sprite-1484aec4643/build/sprites/css-sprite-topic-icons-square.png);
}
@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx) {
  .css-sprite-topic-icons-square {
    background-image: url(/site_media/sprite-1484aec4643/build/sprites/css-sprite-topic-icons-square-x2.png);
    background-size: 182px 136px;
  }
}
.css-sprite-quiz {
  background-image: url(/site_media/sprite-68d8d29d003/build/sprites/css-sprite-quiz.png);
}
@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx) {
  .css-sprite-quiz {
    background-image: url(/site_media/sprite-68d8d29d003/build/sprites/css-sprite-quiz-x2.png);
    background-size: 479px 448px;
  }
}
.flexBanner {
  display: flex;
  justify-content: center;
  align-items: center;
}
.bannerCta {
  background: var(--cta-bg);
  color: var(--cta-text-color);
  height: 30px;
  border-radius: 6px;
  padding: 2px 12px;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  font-size: 12px;
  font-weight: 700;
  text-decoration: none;
  white-space: nowrap;
}
.bannerCta:hover {
  background: var(--cta-bg-hover);
  color: var(--cta-text-color-hover);
}
.refreshed-banner {
  --banner-bg: #000000;
  --banner-text-color: #fff;
  --cta-bg: #2c6fef;
  --cta-bg-hover: #2153b3;
  --cta-text-color: #fff;
  --cta-text-color-hover: #fff;
  background: var(--banner-bg);
  color: var(--banner-text-color);
  width: 100%;
  height: auto;
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 1.5;
  cursor: pointer;
  text-align: center;
  font-size: 16px;
  padding: 9px 0 9px 0;
}
.refreshed-banner:hover {
  background: var(--banner-bg);
  color: var(--banner-text-color);
}
.refreshed-banner.with-coupon .excel-message-wrapper {
  display: none;
}
.refreshed-banner .countdown {
  font-size: inherit;
}
.refreshed-banner p {
  margin: 0;
  flex-direction: row;
  gap: 8px;
  text-align: left;
  padding: 0 12px;
}
.refreshed-banner .icon {
  margin-right: 16px;
}
.refreshed-banner .journal-icon {
  background-position: -744.5px -84.5px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 24px;
  height: 24px;
  min-width: 24px;
}
.refreshed-banner .call-to-action,
.refreshed-banner .btn {
  background: var(--cta-bg);
  color: var(--cta-text-color);
  height: 30px;
  border-radius: 6px;
  padding: 2px 12px;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  font-size: 12px;
  font-weight: 700;
  text-decoration: none;
  white-space: nowrap;
  line-height: 1.5;
}
.refreshed-banner .call-to-action:hover,
.refreshed-banner .btn:hover {
  background: var(--cta-bg-hover);
  color: var(--cta-text-color-hover);
}
.refreshed-banner .generic-banner .icon {
  min-width: 20px;
}
.refreshed-banner.seasonal-discount .no-trial-no-coupon,
.refreshed-banner.with-trial .no-trial-no-coupon,
.refreshed-banner.with-coupon .no-trial-no-coupon {
  display: none;
}
.refreshed-banner.mothers-day {
  background: #f7d79a;
  color: #000000;
  font-weight: 500;
}
.refreshed-banner.mothers-day .call-to-action {
  background: #000000;
  color: #fff;
}
.refreshed-banner.mothers-day .call-to-action:hover {
  color: #fff;
  background: #4c4c4c;
}
.refreshed-banner.mothers-day .banner-icon {
  background-position: -685px -582px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 34px;
  height: 34px;
  min-width: 34px;
}
a.premium-banner em.free {
  font-style: normal;
}
a.premium-banner.refreshed-banner {
  --banner-bg: #000000;
  --banner-text-color: #fff;
  --cta-bg: #2c6fef;
  --cta-bg-hover: #2153b3;
  --cta-text-color: #fff;
  --cta-text-color-hover: #fff;
  background: var(--banner-bg);
  color: var(--banner-text-color);
  width: 100%;
  height: auto;
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 1.5;
  cursor: pointer;
  text-align: center;
  font-size: 16px;
  padding: 9px 0 9px 0;
}
a.premium-banner.refreshed-banner:hover {
  background: var(--banner-bg);
  color: var(--banner-text-color);
}
a.premium-banner.refreshed-banner.with-coupon .excel-message-wrapper {
  display: none;
}
a.premium-banner.refreshed-banner .countdown {
  font-size: inherit;
}
a.premium-banner.refreshed-banner p {
  margin: 0;
  flex-direction: row;
  gap: 8px;
  text-align: left;
  padding: 0 12px;
}
a.premium-banner.refreshed-banner .icon {
  margin-right: 16px;
}
a.premium-banner.refreshed-banner .journal-icon {
  background-position: -744.5px -84.5px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 24px;
  height: 24px;
  min-width: 24px;
}
a.premium-banner.refreshed-banner .call-to-action,
a.premium-banner.refreshed-banner .btn {
  background: var(--cta-bg);
  color: var(--cta-text-color);
  height: 30px;
  border-radius: 6px;
  padding: 2px 12px;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  font-size: 12px;
  font-weight: 700;
  text-decoration: none;
  white-space: nowrap;
  line-height: 1.5;
}
a.premium-banner.refreshed-banner .call-to-action:hover,
a.premium-banner.refreshed-banner .btn:hover {
  background: var(--cta-bg-hover);
  color: var(--cta-text-color-hover);
}
a.premium-banner.refreshed-banner .generic-banner .icon {
  min-width: 20px;
}
a.premium-banner.refreshed-banner.seasonal-discount .no-trial-no-coupon,
a.premium-banner.refreshed-banner.with-trial .no-trial-no-coupon,
a.premium-banner.refreshed-banner.with-coupon .no-trial-no-coupon {
  display: none;
}
a.premium-banner.refreshed-banner.mothers-day {
  background: #f7d79a;
  color: #000000;
  font-weight: 500;
}
a.premium-banner.refreshed-banner.mothers-day .call-to-action {
  background: #000000;
  color: #fff;
}
a.premium-banner.refreshed-banner.mothers-day .call-to-action:hover {
  color: #fff;
  background: #4c4c4c;
}
a.premium-banner.refreshed-banner.mothers-day .banner-icon {
  background-position: -685px -582px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 34px;
  height: 34px;
  min-width: 34px;
}
a.premium-banner.refreshed-banner p.student-discount {
  padding: 0 12px;
  font-size: 15px;
  line-height: 1.25;
}
a.premium-banner.refreshed-banner p.countdown {
  display: flex;
}
a.premium-banner.refreshed-banner em.free {
  text-transform: uppercase;
}
.referral-banner.refreshed-banner {
  background: var(--banner-bg);
  color: var(--banner-text-color);
  height: auto;
  padding: 9px 0 9px 0;
}
.referral-banner.refreshed-banner:hover {
  color: var(--banner-text-color);
}
.referral-banner.refreshed-banner .banner-content p {
  text-align: left;
  justify-content: center;
  align-items: center;
  gap: 8px;
}
.referral-banner.refreshed-banner .banner-content p img {
  display: inline-block;
  height: 30px;
}
.referral-banner.refreshed-banner .banner-content p a {
  background: var(--cta-bg);
  height: 30px;
  border-radius: 6px;
  padding: 2px 12px;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  font-size: 12px;
  font-weight: 700;
  white-space: nowrap;
  text-decoration: none;
  color: var(--cta-text-color);
}
.referral-banner.refreshed-banner .banner-content p a:hover {
  background: var(--cta-bg-hover);
  color: var(--cta-text-color-hover);
}
@media screen and (max-width: 699px) {
  .referral-banner.refreshed-banner .banner-content p br {
    display: none;
  }
  .referral-banner.refreshed-banner .banner-content p img {
    height: 34px;
  }
}
.referral-banner.refreshed-banner #sitewide p {
  margin: 0;
}
.site-header {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  min-width: 1200px;
  border-bottom: 1px solid #d4d4d4;
  background: #fbfbfb;
  z-index: 400;
}
@media screen and (min-width: 700px) and (max-width: 1200px) {
  .site-header {
    min-width: 960px;
  }
}
body.active #wrapper,
body.active .site-header .container {
  float: none;
}
body.active {
  height: 100%;
}
body.active #wrapper {
  min-height: 100%;
}
body.active.mobile #wrapper {
  padding: 0;
}
.hdr-logo {
  height: auto;
  margin-top: 5px;
}
.hdr-logo a,
.hdr-logo span {
  text-indent: -9999px;
  background-position: 0px 0px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 205px;
  height: 37px;
}
.hdr-links {
  float: left;
  width: 398px;
  margin-right: 48px;
}
.hdr-links.has-navbar-icon .hdr-link {
  padding: 0;
  margin-right: 0;
}
.hdr-links.has-navbar-icon .hdr-link a {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: space-between;
  margin: 0 32px 0 0;
  padding: 16px 0;
  gap: 8px;
  text-transform: capitalize;
  font-weight: 400;
  font-size: 16px;
  letter-spacing: normal;
  --navbar-bottom-border-color: transparent;
  position: relative;
  color: #666666;
  transition: color 0.2s;
}
.hdr-links.has-navbar-icon .hdr-link a::after {
  content: '';
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  height: 2px;
  opacity: 0;
  background-color: var(--navbar-bottom-border-color);
  transition: transform 0.2s ease-in-out, background-color 0.3s, opacity 0.3s;
  transform: translateY(0px);
}
.hdr-links.has-navbar-icon .hdr-link a:hover {
  --navbar-bottom-border-color: #cccccc;
  border-radius: 6px;
}
.hdr-links.has-navbar-icon .hdr-link a.active {
  --navbar-bottom-border-color: #000;
}
.hdr-links.has-navbar-icon .hdr-link a .navbar-icon {
  display: flex;
  --navbar-icon-color: #666666;
}
.hdr-links.has-navbar-icon .hdr-link a.active,
.hdr-links.has-navbar-icon .hdr-link a:focus,
.hdr-links.has-navbar-icon .hdr-link a:hover {
  color: #000;
}
.hdr-links.has-navbar-icon .hdr-link a.active .navbar-icon,
.hdr-links.has-navbar-icon .hdr-link a:focus .navbar-icon,
.hdr-links.has-navbar-icon .hdr-link a:hover .navbar-icon {
  --navbar-icon-color: #000;
}
.hdr-links.has-navbar-icon .hdr-link a.active::after,
.hdr-links.has-navbar-icon .hdr-link a:focus::after,
.hdr-links.has-navbar-icon .hdr-link a:hover::after {
  opacity: 1;
  transform: translateY(-2px);
}
.hdr-links.has-navbar-icon .hdr-link a:focus-visible {
  outline: none;
}
.hdr-links.has-navbar-icon .hdr-link a:focus-visible::before {
  content: '';
  position: absolute;
  top: 4px;
  bottom: 4px;
  left: -16px;
  right: -16px;
  border-radius: 6px;
  border: 3px solid #2c6fef;
}
.hdr-links.has-navbar-icon .hdr-link a svg {
  flex-shrink: 0;
  fill: var(--navbar-icon-color);
  transition: fill 0.3s ease-in-out;
}
@media screen and (min-width: 700px) and (max-width: 1200px) {
  .hdr-links {
    width: 322px;
    margin-right: 32px;
  }
}
.hdr-link {
  float: left;
  margin-right: 76px;
}
@media screen and (min-width: 700px) and (max-width: 1200px) {
  .hdr-link {
    margin-right: 42px;
  }
  .hdr-link:last-child {
    margin: 0;
  }
}
.hdr-link:last-child {
  margin-right: 0;
}
.hdr-link a {
  color: #777;
  font-size: 16px;
}
.hdr-link a:hover {
  color: #333;
}
.hdr-link a.active {
  font-weight: bold;
  color: #333;
}
.hdr-expandable.expanded .hdr-link a {
  color: #333;
}
.hdr-expandable.expanded > div {
  display: block;
}
.hdr-expandable .hdr-link {
  display: block;
}
.hdr-expandable > div {
  display: none;
  position: absolute;
  top: 46px;
  left: 0;
  width: 100%;
  padding: 24px 0;
  background: #fff;
  box-shadow: 0 12px 10px -10px rgba(0, 0, 0, 0.1);
}
.hdr-expandable > div:before {
  content: '';
  position: absolute;
  display: block;
  top: -5px;
  left: 0;
  width: 100%;
  height: 5px;
}
.hdr-expandable > div ul {
  margin: 0 auto;
}
.hdr-expandable li {
  float: left;
  width: 276px;
}
.hdr-expandable li:nth-child(odd) {
  margin-right: 224px;
}
.hdr-expandable li ul {
  display: none;
}
.hdr-expandable li a {
  position: relative;
  display: block;
  padding: 16px 0 16px 76px;
  font-size: 16px;
  line-height: 1.4em;
  color: #333;
}
.hdr-expandable li a:hover {
  color: #777;
}
.hdr-expandable li a:hover span {
  opacity: 0.7;
}
@media screen and (min-width: 700px) and (max-width: 1200px) {
  .hdr-expandable li {
    width: 280px;
  }
  .hdr-expandable li:nth-child(odd) {
    margin-right: 32px;
  }
  .hdr-expandable li a {
    padding-left: 60px;
  }
}
.hdr-topic-icon {
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -22px;
  border-radius: 10px;
  background-image: url(/site_media/sprite-1484aec4643/build/sprites/css-sprite-topic-icons-square.png);
  background-position: 0px 0px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: inline-block;
  width: 44px;
  height: 44px;
}
@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx) {
  .hdr-topic-icon {
    background-image: url(/site_media/sprite-1484aec4643/build/sprites/css-sprite-topic-icons-square-x2.png);
    background-size: 182px 136px;
  }
}
.hdr-topic-icon.basic-mathematics {
  background-position: -46px 0px;
}
.hdr-topic-icon.algebra {
  background-position: 0px 0px;
}
.hdr-topic-icon.geometry {
  background-position: -92px -92px;
}
.hdr-topic-icon.calculus {
  background-position: 0px -46px;
}
.hdr-topic-icon.number-theory {
  background-position: -138px -46px;
}
.hdr-topic-icon.logic {
  background-position: -138px 0px;
}
.hdr-topic-icon.combinatorics,
.hdr-topic-icon.discrete-mathematics {
  background-position: -92px -46px;
}
.hdr-topic-icon.mechanics-2,
.hdr-topic-icon.mechanics {
  background-position: -92px 0px;
}
.hdr-topic-icon.electricity-and-magnetism {
  background-position: -46px -92px;
}
.hdr-topic-icon.computer-science {
  background-position: 0px -92px;
}
.hdr-topic-icon.quantitative-finance {
  background-position: -138px -92px;
}
.hdr-topic-icon.chemistry {
  background-position: -46px -46px;
}
.search {
  margin: 0px;
}
.hdr-search {
  margin-right: 24px;
  margin-top: 0;
  flex-grow: 2;
}
.hdr-premium-btn {
  float: left;
  width: 126.4px;
  padding: 3px 0;
  border-color: #07a17b;
  border-radius: 6px;
  color: #07a17b;
  font-size: 16px;
  background: transparent;
}
.hdr-premium-btn:hover {
  border-color: #00bd8e;
  color: #00bd8e;
}
.hdr-premium-btn:focus,
.hdr-premium-btn:active {
  color: #00bd8e;
}
@media screen and (min-width: 700px) and (max-width: 1200px) {
  .hdr-premium-btn {
    width: 105.6px;
  }
}
.b-sprite-courses-magnifier {
  position: absolute;
  left: 16px;
  top: 50%;
  margin-top: -8px;
  z-index: 2;
  background-position: -110px -100px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  text-indent: -9999px;
  width: 16px;
  height: 16px;
}
.hdr-with-reenable-btn {
  position: relative;
}
.hdr-with-reenable-btn .hdr-premium-btn {
  width: 174px;
  margin-right: -16px;
}
@media screen and (min-width: 700px) and (max-width: 1200px) {
  .hdr-with-reenable-btn .hdr-premium-btn {
    width: 142px;
    padding: 0;
    line-height: 32px;
    font-size: 13px;
  }
}
.hdr-tooltip {
  position: absolute;
  top: 53px;
  right: 112px;
  padding: 16px;
  width: 442px;
  border: 1px solid #333;
  border-radius: 4px;
  background: #fff;
  opacity: 0;
  -webkit-transition: opacity 100ms linear;
  transition: opacity 100ms linear;
}
@media screen and (min-width: 700px) and (max-width: 1200px) {
  .hdr-tooltip {
    right: 85px;
  }
}
.hdr-tooltip.in {
  opacity: 1;
}
.hdr-tooltip span {
  position: absolute;
  top: -10px;
  right: 24px;
  background-position: -276.5px -218px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 15px;
  height: 10.5px;
}
.hdr-tooltip div {
  padding: 0 16px;
}
.hdr-tooltip div .btn {
  width: 47.5%;
  float: left;
}
.hdr-tooltip div .btn:first-child {
  margin-right: 5%;
}
.hdr-settings {
  float: right;
  width: auto;
}
.hdr-settings .dropdown-toggle {
  position: relative;
  width: 30px;
  height: 30px;
  padding: 0;
  border: 0;
  vertical-align: middle;
  border-radius: 50%;
}
.hdr-settings .dropdown-toggle:hover {
  opacity: 0.8;
}
.hdr-settings img {
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  z-index: 1;
}
.hdr-settings .count {
  position: absolute;
  top: -4px;
  right: -6px;
  min-width: 16px;
  line-height: 16px;
  padding: 0 3px;
  background: #ffc500;
  color: #fff;
  font-size: 11px;
  text-align: center;
  border-radius: 50%;
  z-index: 1;
}
.hdr-settings .count.hide {
  display: none;
}
.hdr-settings-menu {
  right: 0;
  left: auto;
  width: 300px;
  padding: 16px;
  margin-top: 8px;
  border: 1px solid #d8d8d8;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
}
.hdr-settings-menu li {
  width: 100%;
}
.hdr-settings-menu li.secondary a {
  color: #e91e63;
}
.hdr-settings-menu li.secondary a:hover {
  color: #930e3b;
}
.hdr-settings-menu li.tertiary a {
  color: #777;
}
.hdr-settings-menu li.tertiary a:hover {
  color: #039be5;
}
.hdr-settings-menu li a {
  color: #333;
  padding: 6px 0;
  font-size: 13px;
}
.hdr-settings-menu li a:hover {
  color: #039be5;
}
.hdr-settings-menu li a.refer {
  color: #2c6fef;
}
.hdr-settings-menu li a.refer:hover {
  color: #2c6fef;
}
.hdr-settings-menu .divider {
  margin: 8px 0;
  border-bottom-color: #333;
}
.hdr-settings-menu .cmp-deferred .spinner {
  margin: 45px auto !important;
}
@media screen and (min-width: 700px) and (max-width: 1200px) {
  .hdr-settings-menu {
    padding: 16px;
  }
}
.big a.hdr-coupon,
.hdr-coupon {
  position: relative;
  display: block;
  background: #1c4b84;
  color: #fff;
  font-size: 16px;
  text-align: center;
  overflow: hidden;
  z-index: 301;
}
.big a.hdr-coupon:hover,
.hdr-coupon:hover {
  color: #fff;
  background: #184173;
}
.big a.hdr-coupon:after,
.hdr-coupon:after {
  content: '';
  position: absolute;
  left: 50%;
  top: 0;
  width: 150vw;
  height: 100%;
  margin-left: -75vw;
  opacity: 0.05;
  background-image: url(/site_media/version-3/images/course-intro/polar-grid.svg);
  background-size: 150vw;
  background-position: center -124vw;
  background-repeat: no-repeat;
}
.big a.hdr-coupon .stars-wrapper,
.hdr-coupon .stars-wrapper {
  display: block;
  padding: 16px;
}
.big a.hdr-coupon p,
.hdr-coupon p {
  margin-bottom: 0;
}
a.premium-banner {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 64px;
  background-image: url(/site_media/version-71a486a605/images/coupon-banner-bg.svg);
  background-size: 100% 100%;
  text-align: center;
  font-size: 17px;
  font-weight: 500;
  color: #161616;
  z-index: 301;
}
a.premium-banner:hover {
  color: #161616;
}
a.premium-banner p {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0;
  font-variant-numeric: tabular-nums;
}
a.premium-banner .emoji {
  margin-right: 4px;
  font-size: 22.1px;
}
a.premium-banner .btn {
  margin-left: 8px;
  padding: 8px 16px;
  border: 0;
  vertical-align: baseline;
  background: #fff;
  color: #479e7d;
  font-weight: bold;
  font-size: 13px;
  line-height: 1.2em;
}
a.premium-banner .countdown {
  font-size: 13px;
}
a.premium-banner .call-to-action {
  margin-left: 4px;
  color: #479e7d;
  font-weight: bold;
  text-decoration: underline;
}
a.premium-banner .excel-message-wrapper.seasonal-discount {
  display: flex;
  align-items: center;
}
a.premium-banner .excel-message-wrapper.seasonal-discount .gift-box {
  margin: -2px 4px -2px 0;
  background-position: -226px -618px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 39px;
  height: 35px;
}
.premium-banner.gift-focused-banner {
  background: #1444a7;
  color: #fff;
}
.premium-banner.gift-focused-banner:hover {
  color: #fff;
}
.premium-banner.gift-focused-banner .excel-message-wrapper {
  display: flex;
  align-items: center;
}
.premium-banner.gift-focused-banner .excel-message-wrapper .gift-box {
  margin: -2px 4px -2px 0;
  background-position: -226px -618px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 39px;
  height: 35px;
}
.premium-banner.gift-focused-banner p {
  line-height: 1.4em;
}
.premium-banner.gift-focused-banner .btn {
  color: #1444a7;
}
.premium-banner.gift-focused-banner .call-to-action {
  color: #fff;
}
#logged-out-header {
  height: 60px;
}
#logged-out-header .signup-btn,
#logged-out-header .login-link {
  float: right;
  margin: 10px 0 10px 10px;
  font-weight: 700;
  font-size: 16px;
  border-radius: 6px;
  line-height: 2;
  width: 108px;
  padding-top: 2px;
  padding-bottom: 2px;
}
#logged-out-header .signup-btn:hover,
#logged-out-header .login-link:hover {
  box-shadow: 0px 1px 3px rgb(0 0 0%);
}
#logged-out-header .login-link {
  background: none;
  border: 2px solid #000000;
  color: #000000;
}
#logged-out-header .signup-btn {
  border: 2px solid #2c6fef;
  background: #2c6fef;
  color: #fff;
}
.hdr-big {
  padding-top: 60px;
}
.hdr-big .site-header {
  min-height: 60px;
  border-bottom: 1px solid #ecedef;
  background: #fff;
}
.hdr-big .site-header .container {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  margin-top: 4px;
}
.hdr-big .site-header.refreshed-navbar {
  box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.1);
  border-bottom: 0;
}
.hdr-big .hdr-logo {
  width: 173.5px;
  margin: 0 68px 0 0;
  display: flex;
}
.hdr-big .hdr-logo a,
.hdr-big .hdr-logo span {
  background-position: 0px -39px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: inline-block;
  width: 173.5px;
  height: 42px;
}
.hdr-big .hdr-links {
  display: flex;
  flex-wrap: nowrap;
  width: auto;
  margin: 0;
}
.hdr-big .hdr-links.has-navbar-icon {
  margin-top: 0;
}
.hdr-big .hdr-link {
  margin-right: 48px;
  line-height: 24px;
}
.hdr-big .hdr-link a {
  text-transform: uppercase;
  letter-spacing: 0.2em;
  font-size: 13px;
  color: #6d7e8e;
  padding: 14px 0;
  display: flex;
}
.hdr-big .hdr-link a:hover {
  color: #1f1f1f;
}
.hdr-big .hdr-link a.active {
  color: #1f1f1f;
}
.hdr-big .hdr-expandable > div {
  top: 60px;
}
.hdr-big .hdr-premium-btn {
  width: 150px;
  margin: 0 16px 0 0;
  padding: 7px 0;
  color: #07a17b;
  text-transform: uppercase;
  font-size: 11px;
  font-weight: bold;
  letter-spacing: 0.2em;
}
.hdr-big .hdr-premium-btn:hover {
  color: #07a17b;
}
.hdr-big .hdr-premium-btn.reenable-btn {
  width: 166px;
  letter-spacing: 0.1em;
}
.hdr-big .hdr-settings.open .dropdown-toggle {
  background: #ecedef;
}
.hdr-big .hdr-settings .dropdown-toggle {
  position: relative;
  margin-top: -2px;
}
.hdr-big .hdr-settings .dropdown-toggle:hover {
  opacity: 1;
  background: #ecedef;
}
.hdr-big .hdr-settings .dropdown-toggle .icon {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 16px;
  height: 2px;
  margin-left: -8px;
  background: #1f1f1f;
}
.hdr-big .hdr-settings .dropdown-toggle .icon:before,
.hdr-big .hdr-settings .dropdown-toggle .icon:after {
  content: '';
  position: absolute;
  width: 100%;
  height: 2px;
  left: 0;
  background: #1f1f1f;
}
.hdr-big .hdr-settings .dropdown-toggle .icon:before {
  top: 5px;
}
.hdr-big .hdr-settings .dropdown-toggle .icon:after {
  bottom: 5px;
}
.hdr-big .hdr-settings .count {
  border-radius: 8px;
}
@media screen and (min-width: 700px) and (max-width: 1200px) {
  .hdr-big .hdr-logo {
    margin-right: 32px;
  }
  .hdr-big .hdr-link {
    margin-right: 32px;
  }
  .hdr-big .hdr-link a {
    letter-spacing: 0.1em;
  }
  .hdr-big .hdr-premium-btn {
    width: 116px;
    letter-spacing: 0.1em;
  }
  .hdr-big .hdr-premium-btn.reenable-btn {
    width: 132px;
    letter-spacing: 0em;
    line-height: 1.6em;
  }
}
.hdr-big #logged-out-header .btns {
  flex: 1;
}
.nux-header-content {
  display: flex;
  justify-content: flex-end;
}
.nux-header-content .btn {
  margin-right: 0;
}
#streaks {
  position: relative;
  margin: 14px 16px 0;
  display: flex;
}
#streaks text {
  font-weight: bold;
  fill: #333;
  font-size: 17px;
  transform: translateX(-2px);
}
#streaks .status {
  height: 21px;
  width: 40px;
  --bolt-color: #d0d0d0;
}
#popup {
  display: none;
}
.site-footer {
  margin: 48px 0 24px;
}
.site-footer .site-footer-main {
  text-align: center;
  color: #0277bd;
  font-size: 16px;
}
.site-footer .site-footer-main li {
  display: inline;
}
.site-footer .site-footer-main a {
  margin: 0 8px;
}
.site-footer .social:first-child a {
  margin-right: 8px;
}
.site-footer .social a {
  margin: 0 16px -4px 8px;
  vertical-align: 0;
  text-indent: -9999px;
  text-align: left;
}
.site-footer .social a:hover {
  opacity: 0.8;
}
.site-footer .fb {
  background-position: -122px -22px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: inline-block;
  width: 19px;
  height: 19px;
}
.site-footer .tw {
  background-position: -97px 0px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: inline-block;
  width: 23px;
  height: 19px;
}
.site-footer .gifts {
  white-space: nowrap;
}
.site-footer .gifts:before {
  content: '';
  vertical-align: middle;
  background-image: url(/site_media/sprite-ab25c0a9e13/build/sprites/css-sprite-paywall.png);
  background-position: -721px -582px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: inline-block;
  width: 28px;
  height: 29px;
  -webkit-transform: scale(0.85);
  transform: scale(0.85);
}
@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx) {
  .site-footer .gifts:before {
    background-image: url(/site_media/sprite-ab25c0a9e13/build/sprites/css-sprite-paywall-x2.png);
    background-size: 772px 710.5px;
  }
}
.apps-footer {
  float: left;
  margin-top: 0;
  text-align: center;
}
.apps-footer a {
  margin: 8px 1px 8px 0;
}
.apps-footer a:hover {
  opacity: 0.8;
}
.apps-footer a.google-play-badge {
  background-position: -67px -122px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: inline-block;
  width: 124px;
  height: 37px;
  height: 0;
  padding-top: 37px;
}
.apps-footer a.app-store-badge {
  background-position: -67px -161px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: inline-block;
  width: 122px;
  height: 37px;
  height: 0;
  padding-top: 37px;
}
.bsharing-container .icon {
  vertical-align: middle;
}
.bsharing-facebook .icon {
  background-position: -22px -82px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: inline-block;
  width: 20px;
  height: 20px;
}
.bsharing-twitter .icon {
  background-position: -97px -42px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 23px;
  height: 19px;
}
.bsharing-remind .icon {
  background-position: -88px -82px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 20px;
  height: 20px;
}
.bsharing-email .icon {
  background-position: -24px -104px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 22px;
  height: 16px;
}
.bsharing-pinterest .icon {
  background-position: -66px -82px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 20px;
  height: 20px;
}
.bsharing-whatsapp.disabled {
  display: none;
}
.bsharing-whatsapp .icon {
  background-position: -122px 0px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 20px;
  height: 20px;
}
.sharing-dd .dropdown-toggle {
  position: relative;
  width: auto;
  padding: 0 5px;
  border: 0;
  margin-left: 20px;
  background-color: transparent;
  outline: none;
  font-size: 10px;
  line-height: 12px;
  text-align: center;
  z-index: 1;
}
.sharing-dd .dropdown-toggle em {
  margin: 6px 6px 5px;
  background-position: -260px -185px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 14px;
  height: 15px;
  -webkit-transition: background-position 0ms linear 100ms;
  transition: background-position 0ms linear 100ms;
}
.sharing-dd .dropdown-toggle em:before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 0;
  height: 0;
  background-color: #039be5;
  z-index: -1;
  border-radius: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.sharing-dd .dropdown-toggle:hover em {
  background-position: -244px -202px;
}
.sharing-dd .dropdown-toggle:hover em:before {
  width: 26px;
  height: 26px;
  -webkit-transition: all 300ms ease 100ms;
  transition: all 300ms ease 100ms;
}
.sharing-dd .dropdown-toggle span {
  position: absolute;
  left: 0;
  width: 100%;
}
.sharing-dd .dropdown-menu {
  display: none;
  width: 170px;
  padding: 20px;
  margin: 0 16px 10px;
}
.sharing-dd .bsharing-container {
  width: 100%;
}
.sharing-dd.open .dropdown-toggle em {
  background-position: -222px -122px;
}
.sharing-dd.open .dropdown-toggle em:before {
  width: 0;
  height: 0;
}
.sharing-dd.open .dropdown-menu {
  display: block;
}
.disc-sharing .bsharing-link,
.wiki-sharing .bsharing-link {
  position: relative;
  display: block;
  width: 100%;
  padding: 13px 12px 13px 32px;
  margin-bottom: 14px;
  color: #fff;
  font-size: 15px;
  text-align: center;
  white-space: normal;
}
.disc-sharing .bsharing-link,
.wiki-sharing .bsharing-link,
.disc-sharing .bsharing-link:hover,
.wiki-sharing .bsharing-link:hover,
.disc-sharing .bsharing-link:active,
.wiki-sharing .bsharing-link:active {
  border: 0;
}
.disc-sharing .bsharing-link:hover,
.wiki-sharing .bsharing-link:hover {
  opacity: 0.95;
}
.disc-sharing .bsharing-link:last-child,
.wiki-sharing .bsharing-link:last-child {
  margin-bottom: 0;
}
.disc-sharing .bsharing-link .icon,
.wiki-sharing .bsharing-link .icon {
  position: absolute;
  top: 50%;
  left: 14px;
}
.disc-sharing .bsharing-facebook,
.wiki-sharing .bsharing-facebook {
  background: #3b5998;
}
.disc-sharing .bsharing-facebook .icon,
.wiki-sharing .bsharing-facebook .icon {
  margin-top: -10px;
  background-position: 0px -82px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 20px;
  height: 20px;
}
.disc-sharing .bsharing-twitter,
.wiki-sharing .bsharing-twitter {
  background: #00acee;
}
.disc-sharing .bsharing-twitter .icon,
.wiki-sharing .bsharing-twitter .icon {
  margin-top: -9.5px;
  background-position: -97px -21px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 23px;
  height: 19px;
}
.disc-sharing .bsharing-remind,
.wiki-sharing .bsharing-remind {
  background: #2f75c1;
}
.disc-sharing .bsharing-remind .icon,
.wiki-sharing .bsharing-remind .icon {
  margin-top: -9px;
  background-position: 0px -104px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 22px;
  height: 18px;
}
.disc-sharing .bsharing-email,
.wiki-sharing .bsharing-email {
  background: #4f4f4f;
}
.disc-sharing .bsharing-email .icon,
.wiki-sharing .bsharing-email .icon {
  margin-top: -8px;
  background-position: -97px -63px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 22px;
  height: 16px;
}
.disc-sharing .bsharing-pinterest,
.wiki-sharing .bsharing-pinterest {
  background: #cc2127;
}
.disc-sharing .bsharing-pinterest .icon,
.wiki-sharing .bsharing-pinterest .icon {
  margin-top: -10px;
  background-position: -44px -82px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 20px;
  height: 20px;
}
.disc-sharing .bsharing-whatsapp,
.wiki-sharing .bsharing-whatsapp {
  background: #63cd4c;
  font-size: 14px;
}
.disc-sharing .bsharing-whatsapp.disabled,
.wiki-sharing .bsharing-whatsapp.disabled {
  display: none;
}
.disc-sharing .bsharing-whatsapp .icon,
.wiki-sharing .bsharing-whatsapp .icon {
  margin-top: -9px;
  background-position: -122px -43px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 18px;
  height: 18px;
}
.solv-sharing .bsharing-link {
  background-color: transparent;
  border: 0;
  background-image: url(/site_media/sprite-dabccecf543/build/sprites/css-sprite-third-party.png);
}
@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx) {
  .solv-sharing .bsharing-link {
    background-image: url(/site_media/sprite-dabccecf543/build/sprites/css-sprite-third-party-x2.png);
    background-size: 142px 122px;
  }
}
.solv-sharing .bsharing-link:hover {
  box-shadow: none;
  opacity: 0.8;
}
.solv-sharing .bsharing-link .icon {
  display: none;
}
.solv-sharing .bsharing-facebook {
  background-position: -49px -33px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: inline-block;
  width: 37px;
  height: 37px;
}
.solv-sharing .bsharing-twitter {
  background-position: 0px 0px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: inline-block;
  width: 47px;
  height: 38px;
}
.solv-sharing .bsharing-remind {
  background-position: 0px -40px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: inline-block;
  width: 40px;
  height: 40px;
}
.solv-sharing .bsharing-email {
  background-position: -49px 0px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: inline-block;
  width: 46px;
  height: 31px;
}
.bsharing-container.logged-out .bsharing-link {
  position: relative;
  display: inline-block;
  width: 30px;
  height: 30px;
  margin-left: 8px;
  border-radius: 50%;
}
.bsharing-container.logged-out .bsharing-link:hover {
  opacity: 0.7;
}
.bsharing-container.logged-out .bsharing-link .icon {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: scale(0.65);
  transform: scale(0.65);
}
.bsharing-container.logged-out .bsharing-facebook {
  margin-left: 0;
  background: #3b5998;
}
.bsharing-container.logged-out .bsharing-facebook .icon {
  background-position: 0px -82px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 20px;
  height: 20px;
  margin: -10px -10px;
}
.bsharing-container.logged-out .bsharing-twitter {
  background: #00acee;
}
.bsharing-container.logged-out .bsharing-twitter .icon {
  background-position: -97px -21px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 23px;
  height: 19px;
  margin: -9.5px -11.5px;
}
.bsharing-container.logged-out .bsharing-remind {
  background: #2f75c1;
}
.bsharing-container.logged-out .bsharing-remind .icon {
  background-position: 0px -104px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 22px;
  height: 18px;
  margin: -9px -11px;
}
.bsharing-container.logged-out .bsharing-email {
  background: #4f4f4f;
}
.bsharing-container.logged-out .bsharing-email .icon {
  background-position: -97px -63px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 22px;
  height: 16px;
  margin: -8px -11px;
}
.bsharing-container.logged-out .bsharing-whatsapp {
  background: #63cd4c;
}
.bsharing-container.logged-out .bsharing-whatsapp .icon {
  background-position: -122px -43px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 18px;
  height: 18px;
  margin: -9px -9px;
}
.bsharing-container.logged-out .bsharing-pinterest {
  background: #cc2127;
}
.bsharing-container.logged-out .bsharing-pinterest .icon {
  background-position: -44px -82px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 20px;
  height: 20px;
  margin: -10px -10px;
  -webkit-transform: scale(0.75);
  transform: scale(0.75);
}
.bsharing-container.logged-out.mobile {
  float: left;
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.4);
}
.bsharing-container.logged-out.mobile.whatsapp-removed .bsharing-link {
  width: 33.33%;
}
.bsharing-container.logged-out.mobile .bsharing-link {
  float: left;
  display: block;
  width: 25%;
  margin-left: 0;
  border-radius: 0;
}
.bsharing-container.logged-out.mobile .bsharing-facebook .icon {
  background-position: -110px -82px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 8px;
  height: 15px;
  margin: -7.5px -4px;
  -webkit-transform: scale(1);
  transform: scale(1);
}
.bsharing-container.logged-out.mobile .bsharing-twitter .icon {
  -webkit-transform: scale(0.8);
  transform: scale(0.8);
}
.bsharing-container.logged-out.mobile .bsharing-whatsapp .icon {
  -webkit-transform: scale(1);
  transform: scale(1);
}
.bsharing-container.logged-out.mobile .bsharing-pinterest {
  float: right;
}
.bsharing-container.logged-out.mobile .bsharing-pinterest .icon {
  background-position: -122px -79px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 14px;
  height: 16px;
  margin: -8px -7px;
  -webkit-transform: scale(1);
  transform: scale(1);
}
.notifs-header {
  border-bottom: 1px solid #333;
}
.notifs-header h3 {
  float: left;
}
.notifs-header form {
  display: inline;
}
.notifs-header a,
.notifs-header .btn-link {
  float: right;
  margin: 6px 0 0 24px;
  font-size: 14px;
}
.notifs-list .empty {
  color: #919191;
  font-style: oblique;
}
.notif-item {
  position: relative;
  padding-right: 30px;
}
.notif-item.unread .time:before {
  content: '';
  display: inline-block;
  width: 10px;
  height: 10px;
  margin-right: 4px;
  background: #ffc500;
  border-radius: 50%;
}
.notif-item.dismissed {
  opacity: 0.5;
}
body.no-touch .notif-item:hover .dismiss {
  display: block;
}
.notif-item p {
  margin: 0;
  font-size: 14px;
  line-height: 1.2em;
  color: #333;
}
.notif-item p a {
  display: inline;
  white-space: normal;
}
.notif-item .time {
  color: #919191;
}
.notif-item form {
  display: inline;
}
.notif-item .dismiss {
  display: none;
  position: absolute;
  right: 0;
}
.hdr-settings-menu .notifs[data-notif-count='0'] {
  display: none;
}
.hdr-settings-menu .notifs-header {
  padding-bottom: 8px;
  display: flex;
}
.hdr-settings-menu .notifs-header h3 {
  font-weight: 400;
  justify-content: flex-start;
}
.hdr-settings-menu .notifs-header > a {
  clear: none;
  padding: 0;
  line-height: 1.3em;
  font-size: 13px;
  color: #777;
  margin-top: 6px;
  justify-content: flex-end;
  text-align: right;
}
.hdr-settings-menu .notifs-header > a span {
  display: block;
}
.hdr-settings-menu .notifs-list:not(.empty) {
  margin: 8px 0;
}
.hdr-settings-menu .notifs-list .empty {
  padding: 24px 0;
  font-size: 14px;
  text-align: center;
}
.hdr-settings-menu .notif-item {
  padding-top: 8px;
  padding-bottom: 8px;
}
.hdr-settings-menu .notif-item p a {
  padding: 0;
  font-size: 14px;
  line-height: 1.2em;
  color: #0277bd;
}
.hdr-settings-menu .notif-item p a:hover {
  color: #039be5;
}
.hdr-settings-menu .notif-item .dismiss {
  top: 10px;
}
.hdr-settings-menu .notifs-dismiss .btn-link {
  padding: 6px 0;
  border-top: 1px solid #333;
  color: #0277bd;
  text-align: center;
}
.hdr-settings-menu .notifs-dismiss .btn-link:hover {
  color: #039be5;
}
.notifs-page {
  margin-top: 24px;
}
.notifs-page .notifs-header {
  padding-bottom: 0;
  margin-bottom: 0;
}
.notifs-page .notifs-list .empty {
  margin: 16px 0;
}
.notifs-page .notif-item {
  padding-top: 16px;
  padding-bottom: 16px;
  border-bottom: 1px solid #bbb;
}
.notifs-page .notif-item:hover {
  background-color: #f0f0f0;
  background: transparent -webkit-linear-gradient(left, #fbfbfb, #f0f0f0 10%, #f0f0f0 90%, #fbfbfb 100%);
  background: transparent linear-gradient(left, #fbfbfb, #f0f0f0 10%, #f0f0f0 90%, #fbfbfb 100%);
  background-repeat: no-repeat;
}
.notifs-page .notif-item .dismiss {
  top: 18px;
}
.zoomable-image {
  position: relative;
  display: inline-block;
  max-width: 100%;
  cursor: pointer;
}
body.no-touch .zoomable-image:hover span {
  display: block;
}
.zoomable-image span {
  display: none;
  position: absolute;
  top: 8px;
  right: 8px;
  width: 32px;
  height: 32px;
  background: rgba(0, 0, 0, 0.75);
  z-index: 1;
  border-radius: 16px;
  -webkit-transition: -webkit-transform 100ms linear, transform 100ms linear;
  transition: -webkit-transform 100ms linear, transform 100ms linear;
}
.zoomable-image span:after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -8px 0 0 -7.5px;
  background-image: url(/site_media/sprite-456ffa33a93/build/sprites/css-sprite-global.png);
  background-position: -261px -167px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 15px;
  height: 16px;
}
@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx) {
  .zoomable-image span:after {
    background-image: url(/site_media/sprite-456ffa33a93/build/sprites/css-sprite-global-x2.png);
    background-size: 300px 234px;
  }
}
.zoomable-modal {
  display: block;
  display: flex;
  width: 100%;
  height: 100%;
  padding: 16px;
  margin: 0 auto;
  background: transparent;
  align-items: center;
  opacity: 0;
  -webkit-transition: opacity 200ms linear;
  transition: opacity 200ms linear;
}
.zoomable-modal.visible {
  opacity: 1;
}
.zoomable-modal.loading img {
  display: none;
}
.zoomable-modal.loading .solv-ir-loading {
  display: block;
}
.zoomable-modal button {
  position: fixed;
  top: 40px;
  right: 40px;
  width: 36px;
  height: 36px;
  border: 0;
  background: rgba(0, 0, 0, 0.75);
  z-index: 900;
  border-radius: 18px;
}
.zoomable-modal button:hover {
  opacity: 0.78;
}
.zoomable-modal button:after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -7.5px 0 0 -7px;
  background-image: url(/site_media/sprite-456ffa33a93/build/sprites/css-sprite-global.png);
  background-position: -244px -185px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 14px;
  height: 15px;
}
@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx) {
  .zoomable-modal button:after {
    background-image: url(/site_media/sprite-456ffa33a93/build/sprites/css-sprite-global-x2.png);
    background-size: 300px 234px;
  }
}
.zoomable-modal img {
  display: block;
  max-width: 100%;
  max-height: 100%;
  margin: 0 auto;
  border: 16px solid #fff;
  cursor: default;
  background: #fff;
}
.zoomable-modal .solv-ir-loading {
  display: none;
}
.zoomable-modal .solv-ir-loading span {
  background: rgba(255, 255, 255, 0.5);
}
.referral-banner {
  z-index: 350;
  position: relative;
  background: #2c6fef;
  color: white;
  display: flex;
  width: 100%;
  justify-content: center;
  align-items: center;
  height: 48px;
  cursor: pointer;
  text-align: center;
  padding: 0 4px;
}
.referral-banner .banner-content {
  display: flex;
  justify-content: center;
  align-items: center;
}
.referral-banner .banner-content p {
  font-size: 13px;
  line-height: 1.25;
  font-weight: 600;
  margin: 0;
  display: flex;
  flex: 1;
  align-items: center;
}
.referral-banner .banner-content p img {
  display: none;
}
.referral-banner .banner-content p a {
  color: white;
  text-decoration: underline;
  margin-left: 4px;
  white-space: nowrap;
  display: flex;
  align-self: center;
}
.referral-banner .banner-content p a:hover {
  color: white;
}
.referral-banner .banner-content button {
  background-color: inherit;
  border: none;
  position: absolute;
  right: 17px;
  padding: 5px;
  bottom: 5px;
}
.referral-banner .banner-content .refer-now {
  margin-left: 13px;
}
.referral-banner #sitewide p {
  font-weight: normal;
  font-size: 15px;
  margin: 11px 13px 12px 13px;
  line-height: 1.562;
}
.referral-banner #sitewide .mobile-blurb {
  margin-left: 4px;
}
@media screen and (max-width: 375px) {
  .referral-banner .banner-content p {
    justify-content: space-between;
  }
}
@media screen and (min-width: 376px) {
  .referral-banner .banner-content p {
    flex: initial;
  }
  .referral-banner .banner-content p a {
    margin-left: 40px;
  }
}
@media screen and (min-width: 701px) {
  .referral-banner #sitewide {
    font-size: 15px;
    font-weight: normal;
  }
  .referral-banner .banner-content p {
    font-size: 14px;
    line-height: 1.5;
  }
  .referral-banner .banner-content p img {
    display: block;
    margin-right: 8px;
  }
  .referral-banner .banner-content p br {
    display: none;
  }
}
@media screen and (max-width: 699px) {
  .referral-banner #sitewide p {
    font-weight: normal;
    font-size: 12px;
    line-height: 1.125em;
    display: flex;
    flex-direction: row-reverse;
  }
  .referral-banner #sitewide button {
    right: 5px;
  }
  .referral-banner #sitewide .mobile-blurb,
  .referral-banner #sitewide .refer-now {
    min-width: fit-content;
  }
  .referral-banner #sitewide .refer-now {
    margin-left: unset;
    margin-right: 4px;
  }
  .referral-banner #sitewide .desktop-blurb,
  .referral-banner #sitewide .icon {
    display: none;
  }
  .referral-banner #sitewide .mobile-blurb {
    margin: unset;
  }
}
@font-face {
  font-family: KaTeX_AMS;
  src: url(/site_media/build/dist/38a68f7d18d292349a6e802a66136eae.woff2) format("woff2"), url(/site_media/build/dist/7d307e8337b9559e4040c5fb76819789.woff) format("woff"), url(/site_media/build/dist/2dbe16b4f4662798159f8d62c8d2509d.ttf) format("truetype");
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: KaTeX_Caligraphic;
  src: url(/site_media/build/dist/342b2969be13827f320614c923fc0a5b.woff2) format("woff2"), url(/site_media/build/dist/9634168fb74ed7678f742b7f15e3c09d.woff) format("woff"), url(/site_media/build/dist/33d26881e4dd89321525c43b993f136c.ttf) format("truetype");
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: KaTeX_Caligraphic;
  src: url(/site_media/build/dist/b50049735e77e336f8a0c5007cfdd5e5.woff2) format("woff2"), url(/site_media/build/dist/00029fb44a5125359a6dfd5f3e534f99.woff) format("woff"), url(/site_media/build/dist/5e7940b4ed250e98a512f520e39c867d.ttf) format("truetype");
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: KaTeX_Fraktur;
  src: url(/site_media/build/dist/7a3757c0bfc580d91012d092ec8f06cb.woff2) format("woff2"), url(/site_media/build/dist/4de87d40f0389255d975c69d45a0a7e7.woff) format("woff"), url(/site_media/build/dist/ed330126290a846bf0bb78f61aa6a080.ttf) format("truetype");
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: KaTeX_Fraktur;
  src: url(/site_media/build/dist/450cc4d9319c4a438dd00514efac941b.woff2) format("woff2"), url(/site_media/build/dist/dc4e330b6334767a16619c60d9ebce8c.woff) format("woff"), url(/site_media/build/dist/82d05fe2abb0da9d1077110efada0f6e.ttf) format("truetype");
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: KaTeX_Main;
  src: url(/site_media/build/dist/78b0124fc13059862cfbe4c95ff68583.woff2) format("woff2"), url(/site_media/build/dist/62c69756b3f1ca7b52fea2bea1030cd2.woff) format("woff"), url(/site_media/build/dist/2e1915b1a2f33c8ca9d1534193e934d7.ttf) format("truetype");
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: KaTeX_Main;
  src: url(/site_media/build/dist/c7213ceb79250c2ca46cc34ff3b1aa49.woff2) format("woff2"), url(/site_media/build/dist/a2e3dcd2316f5002ee2b5f35614849a8.woff) format("woff"), url(/site_media/build/dist/0d817b487b7fc993bda7dddba745d497.ttf) format("truetype");
  font-weight: 700;
  font-style: italic;
}
@font-face {
  font-family: KaTeX_Main;
  src: url(/site_media/build/dist/eea32672f64250e9d1dfb68177c20a26.woff2) format("woff2"), url(/site_media/build/dist/081073fd6a7c66073ad231db887de944.woff) format("woff"), url(/site_media/build/dist/767e06e1df6abd16e092684bffa71c38.ttf) format("truetype");
  font-weight: 400;
  font-style: italic;
}
@font-face {
  font-family: KaTeX_Main;
  src: url(/site_media/build/dist/f30e3b213e9a74cf7563b0c3ee878436.woff2) format("woff2"), url(/site_media/build/dist/756fad0d6f3dff1062cfa951751d744c.woff) format("woff"), url(/site_media/build/dist/689bbe6b67f22ffb51b15cc6cfa8facf.ttf) format("truetype");
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: KaTeX_Math;
  src: url(/site_media/build/dist/753ca3dfa44302604bec8e08412ad1c1.woff2) format("woff2"), url(/site_media/build/dist/b3e80ff3816595ffb07082257d30b24f.woff) format("woff"), url(/site_media/build/dist/d9377b53f267ef7669fbcce45a74d4c7.ttf) format("truetype");
  font-weight: 700;
  font-style: italic;
}
@font-face {
  font-family: KaTeX_Math;
  src: url(/site_media/build/dist/2a39f3827133ad0aeb2087d10411cbf2.woff2) format("woff2"), url(/site_media/build/dist/67710bb2357b8ee5c04d169dc440c69d.woff) format("woff"), url(/site_media/build/dist/0343f93ed09558b81aaca43fc4386462.ttf) format("truetype");
  font-weight: 400;
  font-style: italic;
}
@font-face {
  font-family: "KaTeX_SansSerif";
  src: url(/site_media/build/dist/59b3773389adfb2b21238892c08322ca.woff2) format("woff2"), url(/site_media/build/dist/f28c4fa28f596796702fea3716d82052.woff) format("woff"), url(/site_media/build/dist/dfcc59ad994a0513b07ef3309b8b5159.ttf) format("truetype");
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: "KaTeX_SansSerif";
  src: url(/site_media/build/dist/99ad93a4600c7b00b961d70943259032.woff2) format("woff2"), url(/site_media/build/dist/9d0fdf5d7d27b0e3bdc740d90b40ec57.woff) format("woff"), url(/site_media/build/dist/3ab5188c9aadedf425ea63c6b6568df7.ttf) format("truetype");
  font-weight: 400;
  font-style: italic;
}
@font-face {
  font-family: "KaTeX_SansSerif";
  src: url(/site_media/build/dist/badf3598c22478fd9155a49391ecd396.woff2) format("woff2"), url(/site_media/build/dist/6c3bd5b57f7eba215a2d37e2e28077f1.woff) format("woff"), url(/site_media/build/dist/d511ebcef253ab53775576f28315f350.ttf) format("truetype");
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: KaTeX_Script;
  src: url(/site_media/build/dist/af7bc98b2200573686405dc784f53cf2.woff2) format("woff2"), url(/site_media/build/dist/4edf4e0fd49c8a5680dd541c05f16a4c.woff) format("woff"), url(/site_media/build/dist/082640ca4242bb2aade86855e4d7d5f6.ttf) format("truetype");
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: KaTeX_Size1;
  src: url(/site_media/build/dist/10ec8be67344c83bb4bbec989de57d8a.woff2) format("woff2"), url(/site_media/build/dist/35b99771d8ac5a9f102389dc1934dac2.woff) format("woff"), url(/site_media/build/dist/2c2dc3b057bb48b80bc785ac3d87ecf8.ttf) format("truetype");
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: KaTeX_Size2;
  src: url(/site_media/build/dist/96a09bfe8978368486ffbbe628932b21.woff2) format("woff2"), url(/site_media/build/dist/9932a08b1b6ae85be1d004d122603004.woff) format("woff"), url(/site_media/build/dist/114ad19833311359052ad1a174159262.ttf) format("truetype");
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: KaTeX_Size3;
  src: url(/site_media/build/dist/2c2f0efb060cbd8357ebed929528f485.woff2) format("woff2"), url(/site_media/build/dist/2afba1537ee8272e34dff773e4a7ba96.woff) format("woff"), url(/site_media/build/dist/a287c06f07d70997ec4b39c470f06fba.ttf) format("truetype");
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: KaTeX_Size4;
  src: url(/site_media/build/dist/d5822f1b0a0baeb76e6bded30dad1043.woff2) format("woff2"), url(/site_media/build/dist/f961545cb96df9989feb2e601a9fcae5.woff) format("woff"), url(/site_media/build/dist/70174da79d1707501c10e07872e84667.ttf) format("truetype");
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: KaTeX_Typewriter;
  src: url(/site_media/build/dist/641339e2cd86c7816bfb8028ee7f86e0.woff2) format("woff2"), url(/site_media/build/dist/53dcf861876aae6f3a6a6004dc3bc758.woff) format("woff"), url(/site_media/build/dist/35fe2cce0791c276b8e919decd873f5b.ttf) format("truetype");
  font-weight: 400;
  font-style: normal;
}
.katex {
  font: normal 1.21em KaTeX_Main, Times New Roman, serif;
  line-height: 1.2;
  text-indent: 0;
  text-rendering: auto;
  border-color: currentColor;
}
.katex * {
  -ms-high-contrast-adjust: none !important;
}
.katex .katex-version:after {
  content: "0.12.0";
}
.katex .katex-mathml {
  position: absolute;
  clip: rect(1px, 1px, 1px, 1px);
  padding: 0;
  border: 0;
  height: 1px;
  width: 1px;
  overflow: hidden;
}
.katex .katex-html > .newline {
  display: block;
}
.katex .base {
  position: relative;
  white-space: nowrap;
  width: min-content;
}
.katex .base,
.katex .strut {
  display: inline-block;
}
.katex .textbf {
  font-weight: 700;
}
.katex .textit {
  font-style: italic;
}
.katex .textrm {
  font-family: KaTeX_Main;
}
.katex .textsf {
  font-family: KaTeX_SansSerif;
}
.katex .texttt {
  font-family: KaTeX_Typewriter;
}
.katex .mathnormal {
  font-family: KaTeX_Math;
  font-style: italic;
}
.katex .mathit {
  font-family: KaTeX_Main;
  font-style: italic;
}
.katex .mathrm {
  font-style: normal;
}
.katex .mathbf {
  font-family: KaTeX_Main;
  font-weight: 700;
}
.katex .boldsymbol {
  font-family: KaTeX_Math;
  font-weight: 700;
  font-style: italic;
}
.katex .amsrm,
.katex .mathbb,
.katex .textbb {
  font-family: KaTeX_AMS;
}
.katex .mathcal {
  font-family: KaTeX_Caligraphic;
}
.katex .mathfrak,
.katex .textfrak {
  font-family: KaTeX_Fraktur;
}
.katex .mathtt {
  font-family: KaTeX_Typewriter;
}
.katex .mathscr,
.katex .textscr {
  font-family: KaTeX_Script;
}
.katex .mathsf,
.katex .textsf {
  font-family: KaTeX_SansSerif;
}
.katex .mathboldsf,
.katex .textboldsf {
  font-family: KaTeX_SansSerif;
  font-weight: 700;
}
.katex .mathitsf,
.katex .textitsf {
  font-family: KaTeX_SansSerif;
  font-style: italic;
}
.katex .mainrm {
  font-family: KaTeX_Main;
  font-style: normal;
}
.katex .vlist-t {
  display: inline-table;
  table-layout: fixed;
  border-collapse: collapse;
}
.katex .vlist-r {
  display: table-row;
}
.katex .vlist {
  display: table-cell;
  vertical-align: bottom;
  position: relative;
}
.katex .vlist > span {
  display: block;
  height: 0;
  position: relative;
}
.katex .vlist > span > span {
  display: inline-block;
}
.katex .vlist > span > .pstrut {
  overflow: hidden;
  width: 0;
}
.katex .vlist-t2 {
  margin-right: -2px;
}
.katex .vlist-s {
  display: table-cell;
  vertical-align: bottom;
  font-size: 1px;
  width: 2px;
  min-width: 2px;
}
.katex .vbox {
  -ms-flex-direction: column;
  flex-direction: column;
  align-items: baseline;
}
.katex .hbox,
.katex .vbox {
  display: -ms-inline-flexbox;
  display: inline-flex;
}
.katex .hbox {
  -ms-flex-direction: row;
  flex-direction: row;
  width: 100%;
}
.katex .thinbox {
  display: inline-flex;
  flex-direction: row;
  width: 0;
  max-width: 0;
}
.katex .msupsub {
  text-align: left;
}
.katex .mfrac > span > span {
  text-align: center;
}
.katex .mfrac .frac-line {
  display: inline-block;
  width: 100%;
  border-bottom-style: solid;
}
.katex .hdashline,
.katex .hline,
.katex .mfrac .frac-line,
.katex .overline .overline-line,
.katex .rule,
.katex .underline .underline-line {
  min-height: 1px;
}
.katex .mspace {
  display: inline-block;
}
.katex .clap,
.katex .llap,
.katex .rlap {
  width: 0;
  position: relative;
}
.katex .clap > .inner,
.katex .llap > .inner,
.katex .rlap > .inner {
  position: absolute;
}
.katex .clap > .fix,
.katex .llap > .fix,
.katex .rlap > .fix {
  display: inline-block;
}
.katex .llap > .inner {
  right: 0;
}
.katex .clap > .inner,
.katex .rlap > .inner {
  left: 0;
}
.katex .clap > .inner > span {
  margin-left: -50%;
  margin-right: 50%;
}
.katex .rule {
  display: inline-block;
  border: 0 solid;
  position: relative;
}
.katex .hline,
.katex .overline .overline-line,
.katex .underline .underline-line {
  display: inline-block;
  width: 100%;
  border-bottom-style: solid;
}
.katex .hdashline {
  display: inline-block;
  width: 100%;
  border-bottom-style: dashed;
}
.katex .sqrt > .root {
  margin-left: 0.27777778em;
  margin-right: -0.55555556em;
}
.katex .fontsize-ensurer.reset-size1.size1,
.katex .sizing.reset-size1.size1 {
  font-size: 1em;
}
.katex .fontsize-ensurer.reset-size1.size2,
.katex .sizing.reset-size1.size2 {
  font-size: 1.2em;
}
.katex .fontsize-ensurer.reset-size1.size3,
.katex .sizing.reset-size1.size3 {
  font-size: 1.4em;
}
.katex .fontsize-ensurer.reset-size1.size4,
.katex .sizing.reset-size1.size4 {
  font-size: 1.6em;
}
.katex .fontsize-ensurer.reset-size1.size5,
.katex .sizing.reset-size1.size5 {
  font-size: 1.8em;
}
.katex .fontsize-ensurer.reset-size1.size6,
.katex .sizing.reset-size1.size6 {
  font-size: 2em;
}
.katex .fontsize-ensurer.reset-size1.size7,
.katex .sizing.reset-size1.size7 {
  font-size: 2.4em;
}
.katex .fontsize-ensurer.reset-size1.size8,
.katex .sizing.reset-size1.size8 {
  font-size: 2.88em;
}
.katex .fontsize-ensurer.reset-size1.size9,
.katex .sizing.reset-size1.size9 {
  font-size: 3.456em;
}
.katex .fontsize-ensurer.reset-size1.size10,
.katex .sizing.reset-size1.size10 {
  font-size: 4.148em;
}
.katex .fontsize-ensurer.reset-size1.size11,
.katex .sizing.reset-size1.size11 {
  font-size: 4.976em;
}
.katex .fontsize-ensurer.reset-size2.size1,
.katex .sizing.reset-size2.size1 {
  font-size: 0.83333333em;
}
.katex .fontsize-ensurer.reset-size2.size2,
.katex .sizing.reset-size2.size2 {
  font-size: 1em;
}
.katex .fontsize-ensurer.reset-size2.size3,
.katex .sizing.reset-size2.size3 {
  font-size: 1.16666667em;
}
.katex .fontsize-ensurer.reset-size2.size4,
.katex .sizing.reset-size2.size4 {
  font-size: 1.33333333em;
}
.katex .fontsize-ensurer.reset-size2.size5,
.katex .sizing.reset-size2.size5 {
  font-size: 1.5em;
}
.katex .fontsize-ensurer.reset-size2.size6,
.katex .sizing.reset-size2.size6 {
  font-size: 1.66666667em;
}
.katex .fontsize-ensurer.reset-size2.size7,
.katex .sizing.reset-size2.size7 {
  font-size: 2em;
}
.katex .fontsize-ensurer.reset-size2.size8,
.katex .sizing.reset-size2.size8 {
  font-size: 2.4em;
}
.katex .fontsize-ensurer.reset-size2.size9,
.katex .sizing.reset-size2.size9 {
  font-size: 2.88em;
}
.katex .fontsize-ensurer.reset-size2.size10,
.katex .sizing.reset-size2.size10 {
  font-size: 3.45666667em;
}
.katex .fontsize-ensurer.reset-size2.size11,
.katex .sizing.reset-size2.size11 {
  font-size: 4.14666667em;
}
.katex .fontsize-ensurer.reset-size3.size1,
.katex .sizing.reset-size3.size1 {
  font-size: 0.71428571em;
}
.katex .fontsize-ensurer.reset-size3.size2,
.katex .sizing.reset-size3.size2 {
  font-size: 0.85714286em;
}
.katex .fontsize-ensurer.reset-size3.size3,
.katex .sizing.reset-size3.size3 {
  font-size: 1em;
}
.katex .fontsize-ensurer.reset-size3.size4,
.katex .sizing.reset-size3.size4 {
  font-size: 1.14285714em;
}
.katex .fontsize-ensurer.reset-size3.size5,
.katex .sizing.reset-size3.size5 {
  font-size: 1.28571429em;
}
.katex .fontsize-ensurer.reset-size3.size6,
.katex .sizing.reset-size3.size6 {
  font-size: 1.42857143em;
}
.katex .fontsize-ensurer.reset-size3.size7,
.katex .sizing.reset-size3.size7 {
  font-size: 1.71428571em;
}
.katex .fontsize-ensurer.reset-size3.size8,
.katex .sizing.reset-size3.size8 {
  font-size: 2.05714286em;
}
.katex .fontsize-ensurer.reset-size3.size9,
.katex .sizing.reset-size3.size9 {
  font-size: 2.46857143em;
}
.katex .fontsize-ensurer.reset-size3.size10,
.katex .sizing.reset-size3.size10 {
  font-size: 2.96285714em;
}
.katex .fontsize-ensurer.reset-size3.size11,
.katex .sizing.reset-size3.size11 {
  font-size: 3.55428571em;
}
.katex .fontsize-ensurer.reset-size4.size1,
.katex .sizing.reset-size4.size1 {
  font-size: 0.625em;
}
.katex .fontsize-ensurer.reset-size4.size2,
.katex .sizing.reset-size4.size2 {
  font-size: 0.75em;
}
.katex .fontsize-ensurer.reset-size4.size3,
.katex .sizing.reset-size4.size3 {
  font-size: 0.875em;
}
.katex .fontsize-ensurer.reset-size4.size4,
.katex .sizing.reset-size4.size4 {
  font-size: 1em;
}
.katex .fontsize-ensurer.reset-size4.size5,
.katex .sizing.reset-size4.size5 {
  font-size: 1.125em;
}
.katex .fontsize-ensurer.reset-size4.size6,
.katex .sizing.reset-size4.size6 {
  font-size: 1.25em;
}
.katex .fontsize-ensurer.reset-size4.size7,
.katex .sizing.reset-size4.size7 {
  font-size: 1.5em;
}
.katex .fontsize-ensurer.reset-size4.size8,
.katex .sizing.reset-size4.size8 {
  font-size: 1.8em;
}
.katex .fontsize-ensurer.reset-size4.size9,
.katex .sizing.reset-size4.size9 {
  font-size: 2.16em;
}
.katex .fontsize-ensurer.reset-size4.size10,
.katex .sizing.reset-size4.size10 {
  font-size: 2.5925em;
}
.katex .fontsize-ensurer.reset-size4.size11,
.katex .sizing.reset-size4.size11 {
  font-size: 3.11em;
}
.katex .fontsize-ensurer.reset-size5.size1,
.katex .sizing.reset-size5.size1 {
  font-size: 0.55555556em;
}
.katex .fontsize-ensurer.reset-size5.size2,
.katex .sizing.reset-size5.size2 {
  font-size: 0.66666667em;
}
.katex .fontsize-ensurer.reset-size5.size3,
.katex .sizing.reset-size5.size3 {
  font-size: 0.77777778em;
}
.katex .fontsize-ensurer.reset-size5.size4,
.katex .sizing.reset-size5.size4 {
  font-size: 0.88888889em;
}
.katex .fontsize-ensurer.reset-size5.size5,
.katex .sizing.reset-size5.size5 {
  font-size: 1em;
}
.katex .fontsize-ensurer.reset-size5.size6,
.katex .sizing.reset-size5.size6 {
  font-size: 1.11111111em;
}
.katex .fontsize-ensurer.reset-size5.size7,
.katex .sizing.reset-size5.size7 {
  font-size: 1.33333333em;
}
.katex .fontsize-ensurer.reset-size5.size8,
.katex .sizing.reset-size5.size8 {
  font-size: 1.6em;
}
.katex .fontsize-ensurer.reset-size5.size9,
.katex .sizing.reset-size5.size9 {
  font-size: 1.92em;
}
.katex .fontsize-ensurer.reset-size5.size10,
.katex .sizing.reset-size5.size10 {
  font-size: 2.30444444em;
}
.katex .fontsize-ensurer.reset-size5.size11,
.katex .sizing.reset-size5.size11 {
  font-size: 2.76444444em;
}
.katex .fontsize-ensurer.reset-size6.size1,
.katex .sizing.reset-size6.size1 {
  font-size: 0.5em;
}
.katex .fontsize-ensurer.reset-size6.size2,
.katex .sizing.reset-size6.size2 {
  font-size: 0.6em;
}
.katex .fontsize-ensurer.reset-size6.size3,
.katex .sizing.reset-size6.size3 {
  font-size: 0.7em;
}
.katex .fontsize-ensurer.reset-size6.size4,
.katex .sizing.reset-size6.size4 {
  font-size: 0.8em;
}
.katex .fontsize-ensurer.reset-size6.size5,
.katex .sizing.reset-size6.size5 {
  font-size: 0.9em;
}
.katex .fontsize-ensurer.reset-size6.size6,
.katex .sizing.reset-size6.size6 {
  font-size: 1em;
}
.katex .fontsize-ensurer.reset-size6.size7,
.katex .sizing.reset-size6.size7 {
  font-size: 1.2em;
}
.katex .fontsize-ensurer.reset-size6.size8,
.katex .sizing.reset-size6.size8 {
  font-size: 1.44em;
}
.katex .fontsize-ensurer.reset-size6.size9,
.katex .sizing.reset-size6.size9 {
  font-size: 1.728em;
}
.katex .fontsize-ensurer.reset-size6.size10,
.katex .sizing.reset-size6.size10 {
  font-size: 2.074em;
}
.katex .fontsize-ensurer.reset-size6.size11,
.katex .sizing.reset-size6.size11 {
  font-size: 2.488em;
}
.katex .fontsize-ensurer.reset-size7.size1,
.katex .sizing.reset-size7.size1 {
  font-size: 0.41666667em;
}
.katex .fontsize-ensurer.reset-size7.size2,
.katex .sizing.reset-size7.size2 {
  font-size: 0.5em;
}
.katex .fontsize-ensurer.reset-size7.size3,
.katex .sizing.reset-size7.size3 {
  font-size: 0.58333333em;
}
.katex .fontsize-ensurer.reset-size7.size4,
.katex .sizing.reset-size7.size4 {
  font-size: 0.66666667em;
}
.katex .fontsize-ensurer.reset-size7.size5,
.katex .sizing.reset-size7.size5 {
  font-size: 0.75em;
}
.katex .fontsize-ensurer.reset-size7.size6,
.katex .sizing.reset-size7.size6 {
  font-size: 0.83333333em;
}
.katex .fontsize-ensurer.reset-size7.size7,
.katex .sizing.reset-size7.size7 {
  font-size: 1em;
}
.katex .fontsize-ensurer.reset-size7.size8,
.katex .sizing.reset-size7.size8 {
  font-size: 1.2em;
}
.katex .fontsize-ensurer.reset-size7.size9,
.katex .sizing.reset-size7.size9 {
  font-size: 1.44em;
}
.katex .fontsize-ensurer.reset-size7.size10,
.katex .sizing.reset-size7.size10 {
  font-size: 1.72833333em;
}
.katex .fontsize-ensurer.reset-size7.size11,
.katex .sizing.reset-size7.size11 {
  font-size: 2.07333333em;
}
.katex .fontsize-ensurer.reset-size8.size1,
.katex .sizing.reset-size8.size1 {
  font-size: 0.34722222em;
}
.katex .fontsize-ensurer.reset-size8.size2,
.katex .sizing.reset-size8.size2 {
  font-size: 0.41666667em;
}
.katex .fontsize-ensurer.reset-size8.size3,
.katex .sizing.reset-size8.size3 {
  font-size: 0.48611111em;
}
.katex .fontsize-ensurer.reset-size8.size4,
.katex .sizing.reset-size8.size4 {
  font-size: 0.55555556em;
}
.katex .fontsize-ensurer.reset-size8.size5,
.katex .sizing.reset-size8.size5 {
  font-size: 0.625em;
}
.katex .fontsize-ensurer.reset-size8.size6,
.katex .sizing.reset-size8.size6 {
  font-size: 0.69444444em;
}
.katex .fontsize-ensurer.reset-size8.size7,
.katex .sizing.reset-size8.size7 {
  font-size: 0.83333333em;
}
.katex .fontsize-ensurer.reset-size8.size8,
.katex .sizing.reset-size8.size8 {
  font-size: 1em;
}
.katex .fontsize-ensurer.reset-size8.size9,
.katex .sizing.reset-size8.size9 {
  font-size: 1.2em;
}
.katex .fontsize-ensurer.reset-size8.size10,
.katex .sizing.reset-size8.size10 {
  font-size: 1.44027778em;
}
.katex .fontsize-ensurer.reset-size8.size11,
.katex .sizing.reset-size8.size11 {
  font-size: 1.72777778em;
}
.katex .fontsize-ensurer.reset-size9.size1,
.katex .sizing.reset-size9.size1 {
  font-size: 0.28935185em;
}
.katex .fontsize-ensurer.reset-size9.size2,
.katex .sizing.reset-size9.size2 {
  font-size: 0.34722222em;
}
.katex .fontsize-ensurer.reset-size9.size3,
.katex .sizing.reset-size9.size3 {
  font-size: 0.40509259em;
}
.katex .fontsize-ensurer.reset-size9.size4,
.katex .sizing.reset-size9.size4 {
  font-size: 0.46296296em;
}
.katex .fontsize-ensurer.reset-size9.size5,
.katex .sizing.reset-size9.size5 {
  font-size: 0.52083333em;
}
.katex .fontsize-ensurer.reset-size9.size6,
.katex .sizing.reset-size9.size6 {
  font-size: 0.5787037em;
}
.katex .fontsize-ensurer.reset-size9.size7,
.katex .sizing.reset-size9.size7 {
  font-size: 0.69444444em;
}
.katex .fontsize-ensurer.reset-size9.size8,
.katex .sizing.reset-size9.size8 {
  font-size: 0.83333333em;
}
.katex .fontsize-ensurer.reset-size9.size9,
.katex .sizing.reset-size9.size9 {
  font-size: 1em;
}
.katex .fontsize-ensurer.reset-size9.size10,
.katex .sizing.reset-size9.size10 {
  font-size: 1.20023148em;
}
.katex .fontsize-ensurer.reset-size9.size11,
.katex .sizing.reset-size9.size11 {
  font-size: 1.43981481em;
}
.katex .fontsize-ensurer.reset-size10.size1,
.katex .sizing.reset-size10.size1 {
  font-size: 0.24108004em;
}
.katex .fontsize-ensurer.reset-size10.size2,
.katex .sizing.reset-size10.size2 {
  font-size: 0.28929605em;
}
.katex .fontsize-ensurer.reset-size10.size3,
.katex .sizing.reset-size10.size3 {
  font-size: 0.33751205em;
}
.katex .fontsize-ensurer.reset-size10.size4,
.katex .sizing.reset-size10.size4 {
  font-size: 0.38572806em;
}
.katex .fontsize-ensurer.reset-size10.size5,
.katex .sizing.reset-size10.size5 {
  font-size: 0.43394407em;
}
.katex .fontsize-ensurer.reset-size10.size6,
.katex .sizing.reset-size10.size6 {
  font-size: 0.48216008em;
}
.katex .fontsize-ensurer.reset-size10.size7,
.katex .sizing.reset-size10.size7 {
  font-size: 0.57859209em;
}
.katex .fontsize-ensurer.reset-size10.size8,
.katex .sizing.reset-size10.size8 {
  font-size: 0.69431051em;
}
.katex .fontsize-ensurer.reset-size10.size9,
.katex .sizing.reset-size10.size9 {
  font-size: 0.83317261em;
}
.katex .fontsize-ensurer.reset-size10.size10,
.katex .sizing.reset-size10.size10 {
  font-size: 1em;
}
.katex .fontsize-ensurer.reset-size10.size11,
.katex .sizing.reset-size10.size11 {
  font-size: 1.19961427em;
}
.katex .fontsize-ensurer.reset-size11.size1,
.katex .sizing.reset-size11.size1 {
  font-size: 0.20096463em;
}
.katex .fontsize-ensurer.reset-size11.size2,
.katex .sizing.reset-size11.size2 {
  font-size: 0.24115756em;
}
.katex .fontsize-ensurer.reset-size11.size3,
.katex .sizing.reset-size11.size3 {
  font-size: 0.28135048em;
}
.katex .fontsize-ensurer.reset-size11.size4,
.katex .sizing.reset-size11.size4 {
  font-size: 0.32154341em;
}
.katex .fontsize-ensurer.reset-size11.size5,
.katex .sizing.reset-size11.size5 {
  font-size: 0.36173633em;
}
.katex .fontsize-ensurer.reset-size11.size6,
.katex .sizing.reset-size11.size6 {
  font-size: 0.40192926em;
}
.katex .fontsize-ensurer.reset-size11.size7,
.katex .sizing.reset-size11.size7 {
  font-size: 0.48231511em;
}
.katex .fontsize-ensurer.reset-size11.size8,
.katex .sizing.reset-size11.size8 {
  font-size: 0.57877814em;
}
.katex .fontsize-ensurer.reset-size11.size9,
.katex .sizing.reset-size11.size9 {
  font-size: 0.69453376em;
}
.katex .fontsize-ensurer.reset-size11.size10,
.katex .sizing.reset-size11.size10 {
  font-size: 0.83360129em;
}
.katex .fontsize-ensurer.reset-size11.size11,
.katex .sizing.reset-size11.size11 {
  font-size: 1em;
}
.katex .delimsizing.size1 {
  font-family: KaTeX_Size1;
}
.katex .delimsizing.size2 {
  font-family: KaTeX_Size2;
}
.katex .delimsizing.size3 {
  font-family: KaTeX_Size3;
}
.katex .delimsizing.size4 {
  font-family: KaTeX_Size4;
}
.katex .delimsizing.mult .delim-size1 > span {
  font-family: KaTeX_Size1;
}
.katex .delimsizing.mult .delim-size4 > span {
  font-family: KaTeX_Size4;
}
.katex .nulldelimiter {
  display: inline-block;
  width: 0.12em;
}
.katex .delimcenter,
.katex .op-symbol {
  position: relative;
}
.katex .op-symbol.small-op {
  font-family: KaTeX_Size1;
}
.katex .op-symbol.large-op {
  font-family: KaTeX_Size2;
}
.katex .op-limits > .vlist-t {
  text-align: center;
}
.katex .accent > .vlist-t {
  text-align: center;
}
.katex .accent .accent-body {
  position: relative;
}
.katex .accent .accent-body:not(.accent-full) {
  width: 0;
}
.katex .overlay {
  display: block;
}
.katex .mtable .vertical-separator {
  display: inline-block;
  min-width: 1px;
}
.katex .mtable .arraycolsep {
  display: inline-block;
}
.katex .mtable .col-align-c > .vlist-t {
  text-align: center;
}
.katex .mtable .col-align-l > .vlist-t {
  text-align: left;
}
.katex .mtable .col-align-r > .vlist-t {
  text-align: right;
}
.katex .svg-align {
  text-align: left;
}
.katex svg {
  display: block;
  position: absolute;
  width: 100%;
  height: inherit;
  fill: currentColor;
  stroke: currentColor;
  fill-rule: nonzero;
  fill-opacity: 1;
  stroke-width: 1;
  stroke-linecap: butt;
  stroke-linejoin: miter;
  stroke-miterlimit: 4;
  stroke-dasharray: none;
  stroke-dashoffset: 0;
  stroke-opacity: 1;
}
.katex svg path {
  stroke: none;
}
.katex img {
  border-style: none;
  min-width: 0;
  min-height: 0;
  max-width: none;
  max-height: none;
}
.katex .stretchy {
  width: 100%;
  display: block;
  position: relative;
  overflow: hidden;
}
.katex .stretchy:after,
.katex .stretchy:before {
  content: "";
}
.katex .hide-tail {
  width: 100%;
  position: relative;
  overflow: hidden;
}
.katex .halfarrow-left {
  position: absolute;
  left: 0;
  width: 50.2%;
  overflow: hidden;
}
.katex .halfarrow-right {
  position: absolute;
  right: 0;
  width: 50.2%;
  overflow: hidden;
}
.katex .brace-left {
  position: absolute;
  left: 0;
  width: 25.1%;
  overflow: hidden;
}
.katex .brace-center {
  position: absolute;
  left: 25%;
  width: 50%;
  overflow: hidden;
}
.katex .brace-right {
  position: absolute;
  right: 0;
  width: 25.1%;
  overflow: hidden;
}
.katex .x-arrow-pad {
  padding: 0 0.5em;
}
.katex .mover,
.katex .munder,
.katex .x-arrow {
  text-align: center;
}
.katex .boxpad {
  padding: 0 0.3em;
}
.katex .fbox,
.katex .fcolorbox {
  box-sizing: border-box;
  border: 0.04em solid;
}
.katex .cancel-pad {
  padding: 0 0.2em;
}
.katex .cancel-lap {
  margin-left: -0.2em;
  margin-right: -0.2em;
}
.katex .sout {
  border-bottom-style: solid;
  border-bottom-width: 0.08em;
}
.katex-display {
  display: block;
  margin: 1em 0;
  text-align: center;
}
.katex-display > .katex {
  display: block;
  text-align: center;
  white-space: nowrap;
}
.katex-display > .katex > .katex-html {
  display: block;
  position: relative;
}
.katex-display > .katex > .katex-html > .tag {
  position: absolute;
  right: 0;
}
.katex-display.leqno > .katex > .katex-html > .tag {
  left: 0;
  right: auto;
}
.katex-display.fleqn > .katex {
  text-align: left;
  padding-left: 2em;
}
.text-formatting-bar {
  display: -webkit-box;
  display: flex;
  background: #f7f7f7;
  border: 1px solid #777;
  border-radius: 0;
}
.text-formatting-bar .btn {
  position: static;
  display: flex;
  align-items: center;
  flex-grow: 1;
  flex-basis: 0;
  height: 32px;
  background: #f7f7f7;
  border: 1px solid #777;
  border-width: 0 1px;
}
.text-formatting-bar .btn:first-child,
.text-formatting-bar .btn:last-child {
  border-radius: 0;
}
.text-formatting-bar .btn:first-child {
  border-left: 0;
}
.text-formatting-bar .btn:last-child {
  border-right: 0;
}
.text-formatting-bar .btn:active,
.text-formatting-bar .btn:focus,
.text-formatting-bar .btn:hover {
  box-shadow: none;
}
.text-formatting-bar .format-icon {
  margin: 0 auto;
  font-size: 13px;
}
.text-formatting-bar .add-latex .format-icon {
  background-position: 0px 0px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 34px;
  height: 13px;
}
.text-formatting-bar .add-link .format-icon {
  background-position: -62px -38px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 24px;
  height: 11px;
}
.text-formatting-bar .add-example .format-icon {
  background-position: -42px -53px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 20px;
  height: 12px;
}
.text-formatting-bar .add-proof .format-icon {
  background-position: -64px -53px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 15px;
  height: 11px;
}
.text-formatting-bar .add-bold .format-icon {
  background-position: -27px -69px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 10px;
  height: 11px;
}
.text-formatting-bar .add-fraction .format-icon {
  background-position: 0px -69px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 11px;
  height: 17px;
}
.text-formatting-bar .add-list .format-icon {
  background-position: 0px -53px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 19px;
  height: 14px;
}
.text-formatting-bar .add-table .format-icon {
  background-position: -21px -53px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 19px;
  height: 13px;
}
.text-formatting-bar .qq-uploader,
.text-formatting-bar .qq-upload-button input {
  height: 100%;
}
.text-formatting-bar .qq-uploader {
  position: static;
  width: 100%;
}
.text-formatting-bar .qq-upload-button {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
  background: #f7f7f7;
}
.text-formatting-bar .qq-upload-button:before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -6.5px 0 0 -9.5px;
  background-image: url(/site_media/sprite-b3f388f89c3/build/sprites/css-sprite-formatting.png);
  background-position: -36px -19px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 19px;
  height: 13px;
}
@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx) {
  .text-formatting-bar .qq-upload-button:before {
    background-image: url(/site_media/sprite-b3f388f89c3/build/sprites/css-sprite-formatting-x2.png);
    background-size: 86px 86px;
  }
}
.text-formatting-bar .qq-upload-button.qq-upload-button-hover,
.text-formatting-bar .qq-upload-button.active,
.text-formatting-bar .qq-upload-button:active,
.text-formatting-bar .qq-upload-button:focus,
.text-formatting-bar .qq-upload-button:hover {
  background: transparent;
  box-shadow: none;
}
.text-formatting-bar .qq-upload-drop-area {
  top: 0;
  left: 0;
  width: 100%;
  height: 32px;
  padding: 0;
}
.text-formatting-bar .qq-upload-drop-area span {
  line-height: 1.9em;
}
.previewing .text-formatting-bar,
.previewing .asset-mgmt-wrapper {
  display: none;
}
body.ie-9 .text-formatting-bar {
  display: table;
  table-layout: fixed;
  width: 100%;
}
body.ie-9 .text-formatting-bar .btn {
  display: table-cell;
  width: 100%;
  float: none;
}
.glossary-admin-modal {
  padding: 24px 16px;
}
.glossary-admin-modal .search-glossary {
  margin: 0 8px 9px;
}
.glossary-admin-modal .helptext {
  font-size: 13px;
  color: #919191;
}
.glossary-admin-modal textarea {
  width: 100%;
  height: 48px;
}
.asset-mgmt-wrapper {
  position: relative;
  float: left;
  width: 100%;
  z-index: 3;
}
.css-sprite-topic-icons-small {
  background-image: url(/site_media/sprite-577eb357a93/build/sprites/css-sprite-topic-icons-small.png);
}
@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx) {
  .css-sprite-topic-icons-small {
    background-image: url(/site_media/sprite-577eb357a93/build/sprites/css-sprite-topic-icons-small-x2.png);
    background-size: 198px 119px;
  }
}
.wiki-content blockquote {
  clear: none;
  padding: 16px;
  margin-bottom: 24px;
  background: #f7f7f7;
  overflow: hidden;
}
.wiki-content blockquote blockquote {
  margin-bottom: 16px;
  background: #fff;
  outline: none;
}
.wiki-content .definition:before,
.wiki-content .example:before,
.wiki-content .proof:before,
.wiki-content .theorem:before {
  display: block;
  margin-bottom: 10px;
  font-size: 9px;
  color: #919191;
  line-height: 1.2em;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.6px;
}
.wiki-content .definition:before {
  content: 'Definition';
}
.wiki-content .example:before {
  content: 'Example';
}
.wiki-content .proof:before {
  content: 'Proof';
}
.wiki-content .theorem:before {
  content: 'Theorem';
}
.wiki-content .meta {
  clear: left;
  padding: 0;
  font-style: oblique;
  font-weight: 400;
  font-size: 12px;
  color: #919191;
  line-height: 1.4em;
  background: #fff;
  border: 0;
  box-shadow: none;
}
.wiki-content .hidden {
  display: none;
  margin-top: 16px;
  text-indent: -3px;
}
.wiki-content .hidden.show {
  display: block;
}
.glossary-container {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
.glossary {
  border-bottom: 1px dotted #333;
  cursor: pointer;
}
.glossary-tooltip {
  position: absolute;
  display: block;
  min-width: 110px;
  max-width: 425px;
  padding: 16px;
  border: 1px solid #d8d8d8;
  border-radius: 4px;
  font-size: 0.9em;
  visibility: visible;
  opacity: 1;
  background: #f7f7f7;
  cursor: move;
  /* fallback if grab cursor is unsupported */
  cursor: grab;
  -webkit-transition: visibility 0s, opacity 100ms linear;
  transition: visibility 0s, opacity 100ms linear;
}
.glossary-tooltip:before,
.glossary-tooltip:after {
  content: '';
  display: block;
  position: absolute;
  width: 0;
  height: 0;
  border: 5px solid transparent;
}
.glossary-tooltip.top:before,
.glossary-tooltip.top:after {
  top: 100%;
}
.glossary-tooltip.top:after {
  border-top-color: #f7f7f7;
}
.glossary-tooltip.top:before {
  border-top-color: #d8d8d8;
  border-width: 6px;
}
.glossary-tooltip.bottom:before,
.glossary-tooltip.bottom:after {
  bottom: 100%;
}
.glossary-tooltip.bottom:after {
  border-bottom-color: #f7f7f7;
}
.glossary-tooltip.bottom:before {
  border-bottom-color: #d8d8d8;
  border-width: 6px;
}
.glossary-tooltip.left:after {
  left: 40px;
}
.glossary-tooltip.left:before {
  left: 39px;
}
.glossary-tooltip.right:after {
  right: 40px;
}
.glossary-tooltip.right:before {
  right: 39px;
}
.glossary-tooltip.dragged {
  border: 1px solid #919191;
}
.glossary-tooltip.dragged:before,
.glossary-tooltip.dragged:after {
  border: 0;
}
.glossary-tooltip.dragged .close {
  position: absolute;
  display: block;
  top: 4px;
  right: 4px;
}
.glossary-tooltip.hidden {
  opacity: 0;
  visibility: hidden;
  -webkit-transition: visibility 0s 100ms, opacity 100ms linear;
  transition: visibility 0s 100ms, opacity 100ms linear;
}
.glossary-tooltip a {
  position: absolute;
  bottom: 4px;
  right: 4px;
  line-height: 1;
  font-size: 0.9em;
}
.glossary-tooltip .admin-links a {
  right: auto;
  left: 4px;
}
.glossary-tooltip .close {
  display: none;
}
.image-gallery-container {
  text-align: center;
}
.image-gallery-container .admin-links {
  margin-top: -24px;
}
.image-gallery {
  display: inline-block;
  margin: 24px auto;
  border: 1px solid #d4d4d4;
  padding: 16px;
  text-align: left;
}
.image-gallery h2 {
  font-size: 15px;
  font-weight: bold;
  font-style: normal;
  letter-spacing: -0.21px;
  margin-bottom: 0.8em;
}
.image-gallery h3 {
  font-size: 13px;
  font-weight: 500;
}
.image-gallery > div {
  display: inline-flex;
}
.image-gallery > div .main-image {
  display: block;
  width: 420px;
  margin-right: 16px;
  font-size: 13px;
}
@media screen and (min-width: 700px) and (max-width: 1200px) {
  .image-gallery > div .main-image {
    width: 350px;
  }
}
.image-gallery > div .main-image img {
  margin-bottom: 16px;
  object-fit: fill;
}
.image-gallery > div .thumbnails {
  display: block;
  width: 44px;
}
.image-gallery > div .thumbnails span {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 44px;
  height: 44px;
  margin-bottom: 8px;
  border: 1px solid #fff;
  outline: 1px solid #f3f3f3;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  opacity: 0.6;
  cursor: pointer;
}
.image-gallery > div .thumbnails span.selected {
  outline: 1px solid #ffc500;
  opacity: 1;
}
.image-gallery > div .thumbnails span.more {
  padding: 8px;
  border: 1px solid #f3f3f3;
  opacity: 1;
  background-color: #f3f3f3;
  text-align: center;
  color: #919191;
}
.image-gallery > div .thumbnails span img {
  max-width: 100%;
  max-height: 100%;
  margin: 0;
}
.image-gallery > div .hidden,
.image-gallery > div .thumbnails span.hidden {
  display: none;
}
.embedded-video {
  display: block;
  max-width: 100%;
  margin: 24px auto;
}
.wistia-video {
  display: block;
  max-width: 100%;
}
.wistia-video.left,
.wistia-video.right {
  width: auto;
}
.wistia-video.center > div {
  margin: 0 auto;
}
.wistia_placebo_close_button img {
  max-width: none;
}
.video-container {
  max-width: 100%;
  position: relative;
  margin: 16px auto;
  display: inline-block;
}
.center {
  text-align: center;
}
@keyframes fadeOut {
  from {
    opacity: 1;
    transform: scale(0.5);
  }
  to {
    opacity: 0;
    transform: scale(1.5);
  }
}
@keyframes fadeOut2 {
  from {
    opacity: 1;
    transform: scale(0.5);
  }
  to {
    opacity: 0;
    transform: scale(1.5);
  }
}
.video-toggle {
  position: absolute;
  top: 0;
  left: 50%;
  bottom: 0;
  width: 60%;
  margin-left: -30%;
  background: transparent;
  border: 0;
  -webkit-tap-highlight-color: transparent;
  /* firefox and friends */
  /* safari */
  /* chrome */
}
.video-toggle.paused {
  background: rgba(236, 237, 239, 0.75);
  top: 0;
  left: 0;
  bottom: 0;
  width: 100%;
  margin-left: 0;
}
.video-toggle.paused:before {
  content: '';
  background-image: url(/site_media/sprite-456ffa33a93/build/sprites/css-sprite-global.png);
  background-position: -122px 0px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 120px;
  height: 120px;
  margin: auto;
  opacity: 1;
}
@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx) {
  .video-toggle.paused:before {
    background-image: url(/site_media/sprite-456ffa33a93/build/sprites/css-sprite-global-x2.png);
    background-size: 300px 234px;
  }
}
.video-toggle.started.paused:before {
  opacity: 0;
  background-position: 0px 0px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 120px;
  height: 120px;
  animation-name: fadeOut;
  animation-duration: 0.2s;
}
.video-toggle.started.play:before {
  content: '';
  background-image: url(/site_media/sprite-456ffa33a93/build/sprites/css-sprite-global.png);
  background-position: -122px 0px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 120px;
  height: 120px;
  margin: auto;
  opacity: 0;
  animation-name: fadeOut2;
  animation-duration: 0.2s;
}
@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx) {
  .video-toggle.started.play:before {
    background-image: url(/site_media/sprite-456ffa33a93/build/sprites/css-sprite-global-x2.png);
    background-size: 300px 234px;
  }
}
.video-toggle.has-controls {
  top: 0;
  bottom: 40px;
  background: transparent;
}
.video-toggle.has-controls.paused:before,
.video-toggle.has-controls.play:before {
  margin-top: 20px;
}
body.webkit .video-toggle.has-controls {
  top: 37px;
  bottom: 37px;
}
body.webkit .video-toggle.has-controls.paused:before,
body.webkit .video-toggle.has-controls.play:before {
  margin-top: 0;
}
body.webkit.chrome .video-toggle.has-controls {
  top: 0;
  bottom: 72px;
}
body.webkit.chrome .video-toggle.has-controls.paused:before,
body.webkit.chrome .video-toggle.has-controls.play:before {
  margin-top: 36px;
}
video {
  display: block;
  max-width: 100%;
}
.wistia-video,
.video-container {
  margin: 24px auto;
}
.wistia-video.left,
.video-container.left {
  float: left;
  margin: 0 24px 24px 0;
}
.wistia-video.right,
.video-container.right {
  float: right;
  margin: 0 0 24px 24px;
}
.css-sprite-staff {
  background-image: url(/site_media/sprite-2b339f0b0c3/build/sprites/css-sprite-staff.png);
}
@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx) {
  .css-sprite-staff {
    background-image: url(/site_media/sprite-2b339f0b0c3/build/sprites/css-sprite-staff-x2.png);
    background-size: 160px 160px;
  }
}
.prac-staff-bios {
  display: none;
  margin-top: 16px;
  opacity: 0;
  -webkit-transition: opacity 200ms linear;
  transition: opacity 200ms linear;
}
.prac-staff-bios.in {
  opacity: 1;
}
.prac-staff-bios h3 {
  font-size: 16px;
  margin-bottom: 16px;
}
.prac-staff-bios > div {
  margin-bottom: 24px;
}
.prac-staff-bios > div:nth-child(odd) {
  padding-right: 12px;
}
.prac-staff-bios > div:nth-child(even) {
  padding-left: 12px;
}
.prac-staff-bios .avatar {
  margin-bottom: 16px;
  background-position: -81px 0px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 79px;
  height: 79px;
  border-radius: 50%;
}
.prac-staff-bios .avatar.zandra {
  background-position: -81px -81px;
}
.prac-staff-bios .avatar.blake {
  background-position: 0px 0px;
}
.prac-staff-bios .avatar.josh {
  background-position: 0px -81px;
}
.prac-staff-bios h4 {
  font-size: 15px;
}
.prac-staff-bios h5 {
  color: #919191;
}
.prac-staff-bios .content {
  height: 156px;
}
.prac-staff-bios .content.josh {
  height: 132px;
}
.prac-staff-bios form {
  margin-bottom: 0;
}
@media screen and (min-width: 700px) and (max-width: 1200px) {
  .prac-staff-bios > div:nth-child(2) h5,
  .prac-staff-bios > div:nth-child(3) h5 {
    display: block;
    height: 50px;
  }
  .prac-staff-bios .content {
    height: 180px;
  }
  .prac-staff-bios .content.josh {
    height: 156px;
  }
}
.custom-checkbox,
.custom-radiobutton {
  display: inline-block;
  line-height: 22px;
  vertical-align: middle;
}
.custom-checkbox input:checked ~ span,
.custom-radiobutton input:checked ~ span {
  background: #039be5;
  border: 0;
}
.custom-checkbox input:checked ~ span:after,
.custom-radiobutton input:checked ~ span:after {
  visibility: visible;
}
.custom-checkbox.disabled span,
.custom-radiobutton.disabled span,
.custom-checkbox input:disabled ~ span,
.custom-radiobutton input:disabled ~ span {
  opacity: 0.3;
  cursor: default;
}
.custom-checkbox input,
.custom-radiobutton input {
  display: none;
}
.custom-checkbox span,
.custom-radiobutton span {
  position: relative;
  display: inline-block;
  width: 22px;
  height: 22px;
  overflow: hidden;
  background: #fff;
  border: 2px solid #d8d8d8;
  border-radius: 50%;
  vertical-align: middle;
  cursor: pointer;
}
.custom-checkbox span:after,
.custom-radiobutton span:after {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  visibility: hidden;
  background-image: url(/site_media/sprite-6f3d3d209b3/build/sprites/css-sprite-settings.png);
  background-position: -30px -130.5px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 14px;
  height: 11px;
  margin-left: -7px;
  margin-top: -5.5px;
}
@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx) {
  .custom-checkbox span:after,
  .custom-radiobutton span:after {
    background-image: url(/site_media/sprite-6f3d3d209b3/build/sprites/css-sprite-settings-x2.png);
    background-size: 255.5px 144.5px;
  }
}
.css-sprite-settings {
  background-image: url(/site_media/sprite-6f3d3d209b3/build/sprites/css-sprite-settings.png);
}
@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx) {
  .css-sprite-settings {
    background-image: url(/site_media/sprite-6f3d3d209b3/build/sprites/css-sprite-settings-x2.png);
    background-size: 255.5px 144.5px;
  }
}
.sell-page-preload .spinner {
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -8px 0 0 -8px;
}
.sell-page {
  display: none;
  width: 100%;
  height: 100%;
  overflow: auto;
  overflow-x: hidden;
  overflow-y: auto;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 699;
  -webkit-overflow-scrolling: touch;
  background: rgba(0, 0, 0, 0.5);
}
.sell-page.sell-page-preload {
  display: block;
}
.sell-page.sell-page-preload div {
  padding: 320px 0;
}
.sell-page.visible {
  display: block;
}
.sell-page .close {
  display: inline-block;
  position: absolute;
  right: 3px;
  top: 5px;
}
#subscription-info-modal {
  width: 776px;
  padding: 24px;
}
.paid-status {
  width: 275px;
  padding: 56px 20px 20px 20px;
  background: #333;
}
.paid-status.loaded .loading {
  display: none;
}
.paid-status.success .success {
  display: block;
}
.paid-status.error .error {
  display: block;
}
.paid-status h3 {
  margin-bottom: 10px;
  font-size: 23px;
  line-height: 1.6em;
  color: #fff;
}
.paid-status p {
  font-size: 16px;
  color: #d8d8d8;
}
.paid-status p a {
  color: #d8d8d8;
  text-decoration: underline;
}
.paid-status p a:hover {
  color: #fff;
  text-decoration: none;
}
.paid-status .close {
  position: absolute;
  top: 5px;
  right: 5px;
  font-size: 25px;
  color: #fff;
}
.paid-status .logo {
  position: absolute;
  top: -33px;
  left: 50%;
  width: 66px;
  height: 66px;
  margin-left: -33px;
  background: url(/site_media/version-iTclAEDK0Z/images/stripe-brilliant-logo.png) 0 0 no-repeat;
}
.paid-status .loading {
  width: 100%;
  margin: 60px 0 100px 0;
  text-align: center;
  color: #fff;
}
.paid-status .loading .spinner {
  margin: 4px 10px -5px 0;
}
.paid-status .btn {
  margin-top: 10px;
  width: 100%;
}
.payment-options-modal {
  position: relative;
  width: 824px;
  max-width: 96%;
  background: #fff;
  margin: 72px auto;
  border-radius: 2px;
}
.payment-options-modal .close {
  position: absolute;
  top: 24px;
  right: 24px;
}
.payment-options-modal .header {
  padding: 16px 24px;
  border-bottom: 2px solid #d4d4d4;
  background: #f7f7f7;
  border-radius: 2px 2px 0 0;
  text-align: center;
}
.payment-options-modal .header h2 {
  margin-bottom: 0;
}
.payment-options-modal .back-btn {
  display: none;
}
.payment-options-modal .option-wrapper {
  display: flex;
}
.payment-options-modal .option {
  position: relative;
  display: inline-block;
  float: left;
  width: 176px;
  text-align: center;
  padding-bottom: 48px;
}
.payment-options-modal .option.stripe {
  border-right: 2px solid #d4d4d4;
}
.payment-options-modal .option.chargebee {
  text-align: center;
}
.payment-options-modal .option.chargebee .btn {
  display: inline-block;
  width: auto;
  padding-left: 24px;
  padding-right: 24px;
}
.payment-options-modal .option .btn {
  width: 200px;
  padding-right: 0;
  padding-left: 0;
  font-weight: bold;
}
.payment-options-modal .option p {
  position: absolute;
  bottom: 0;
  width: 100%;
  margin: 24px 0;
  color: #bbb;
  font-size: 13px;
  line-height: 1.5em;
  text-align: center;
}
.payment-options-modal .btn {
  margin-bottom: 16px;
  font-size: 16px;
  font-weight: bold;
  padding: 8px;
}
.payment-options-modal .btn.paymentrequest {
  padding: 0;
  border: 0;
  border-radius: 4px;
}
.payment-options-modal .payment-icon {
  margin: 24px auto;
}
.payment-options-modal .cc-icon {
  background-position: -338.5px -498.5px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 145px;
  height: 64px;
}
.payment-options-modal .paypal-icon {
  background-position: -685px -516px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 59px;
  height: 64px;
}
.payment-options-modal .lock-icon {
  margin-right: 4px;
  vertical-align: -1px;
  background-position: -757px -263.5px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: inline-block;
  width: 10px;
  height: 13px;
}
.payment-options-modal .paypal.loading .btn {
  display: none;
}
.payment-options-modal .paypal.loading .paypal-loading {
  display: block;
}
.payment-options-modal .paypal-loading {
  display: none;
  padding: 4px 0;
  line-height: 1.6em;
  text-align: center;
}
.payment-options-modal .paypal-loading .spinner {
  margin-right: 8px;
  vertical-align: -2px;
}
#paypal-modal.annual .payment-options-modal .annual,
#paypal-modal.monthly .payment-options-modal .monthly,
#paypal-modal.lifetime .payment-options-modal .lifetime {
  display: inline-block;
}
#paypal-modal.single-option .payment-options-modal {
  width: 412px;
}
#paypal-modal.single-option .payment-options-modal .option {
  width: 100%;
  border: 0;
}
#paypal-modal .payment-options-modal .annual,
#paypal-modal .payment-options-modal .monthly,
#paypal-modal .payment-options-modal .lifetime {
  display: none;
}
#paypal-modal .payment-options-modal .option {
  width: 50%;
}
.paid-course-cards {
  height: 195px;
  background: url(/site_media/version-e3189d4b49/images/course-cards-1x.png) center center no-repeat #f7f7f7;
  background-size: cover;
  border-bottom: 1px solid #f0f0f0;
  position: relative;
}
@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx) {
  .paid-course-cards {
    background-image: url(/site_media/version-3d4ab8ea49/images/course-cards-2x.png);
  }
}
.paid-activation {
  margin: 0 auto;
  padding-top: 96px;
  text-align: center;
}
.paid-activation .alert p {
  margin: 8px 0;
}
.paid-activation .btn {
  width: 220px;
  max-width: 100%;
  margin-top: 8px;
}
.paid-success {
  padding-bottom: 32px;
  margin: -163px auto 24px;
  background: #fff;
  border-radius: 4px;
  box-shadow: 0 0 4px rgba(0, 0, 0, 0.3);
  overflow: hidden;
}
.paid-success.error {
  margin-top: 24px;
}
.paid-success h1 {
  background: #f7f7f7;
  border-bottom: 1px solid #d4d4d4;
  padding: 12px 0;
  margin-bottom: 16px;
  line-height: 1.3em;
  text-align: center;
}
@media screen and (min-width: 700px) and (max-width: 1200px) {
  .paid-success {
    padding: 16px;
  }
  .paid-success .content {
    width: 512px;
  }
}
.bulk-premium-form {
  margin-top: 24px;
}
.bulk-premium-form select {
  width: 176px;
  margin-right: 24px;
}
.bulk-premium-form textarea {
  width: 476px;
  height: 200px;
}
.bulk-premium-form .checkbox {
  margin: 24px 0 16px 0;
}
body.paywall {
  background: #f7f7f7;
}
body.paywall #wrapper {
  width: 100%;
  margin: 0;
  padding: 0;
}
body.paywall-gift-page {
  background: #f7f7f7;
}
body.paywall-gift-page .modal-bg {
  background: rgba(255, 255, 255, 0.83);
}
body.paywall-gift-page .modal {
  border-radius: 10px;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.25);
}
body.paywall-gift-page .sell-page {
  background: rgba(255, 255, 255, 0.83);
}
body.paywall-gift-page .payment-options-modal {
  border-radius: 10px;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.25);
  overflow: hidden;
}
body.paywall-gift-page .payment-options-modal .header h2 {
  text-align: center;
  font-weight: bold;
}
body.paywall-gift-page .payment-options-modal .back-btn {
  display: inline-block;
  position: absolute;
  top: 19px;
  left: 24px;
  font-size: 16px;
  color: #333;
}
body.paywall-gift-page .payment-options-modal .back-btn:hover {
  opacity: 0.6;
}
body.paywall-gift-page .payment-options-modal .back-btn span {
  margin: 0 4px -2px 0;
  background-position: -744.5px -162.5px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: inline-block;
  width: 19px;
  height: 16px;
}
body.paywall-gift-page .payment-options-modal .option {
  padding: 48px 0;
}
body.paywall-gift-page .payment-options-modal .option.stripe {
  border-width: 1px;
}
.paywall-section,
.paywall-section-gray {
  position: relative;
}
.paywall-section h2,
.paywall-section-gray h2 {
  display: block;
  margin-bottom: 64px;
  font-size: 30px;
  font-weight: 600;
  text-align: center;
  line-height: 1.2em;
}
.paywall-section .btn.btn-small,
.paywall-section-gray .btn.btn-small {
  background: #e6e6e6;
  color: #000000;
  border: 0;
  font-size: 16px;
}
.paywall-section .btn.btn-small:hover,
.paywall-section-gray .btn.btn-small:hover {
  box-shadow: none;
}
.paywall-section {
  padding: 72px 0 64px;
  background: #fff;
}
.paywall-section-gray {
  padding: 48px 0;
  background: #f7f7f8;
}
.paywall-back {
  position: absolute;
  top: 24px;
  left: 0;
  z-index: 300;
}
.paywall-back a {
  position: relative;
  color: #fff;
}
.paywall-back a:hover {
  opacity: 0.7;
}
.paywall-back span {
  position: absolute;
  top: 1px;
  left: -16px;
  background-position: -77px -20px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: inline-block;
  width: 10px;
  height: 16px;
}
.paywall-header {
  position: relative;
  background: #0e4680;
  overflow-y: visible;
}
.paywall-header.with-upgrade-plan .plan {
  float: none;
  margin-left: auto;
  margin-right: auto !important;
}
.paywall-header.lifetime-upgrade .plan.no-tag {
  margin-top: -16px;
}
.paywall-header.trial-header {
  padding: 96px 16px;
}
.paywall-header.trial-header .subtext {
  margin-bottom: 56px;
  line-height: 25px;
  color: rgba(255, 255, 255, 0.7);
}
.paywall-header > div {
  width: 100%;
}
.paywall-header .plans-wrapper {
  position: relative;
  margin-bottom: 80px;
  z-index: 100;
}
.paywall-header h1 {
  margin-bottom: 12px;
  font-weight: 600;
  font-size: 36px;
  line-height: 1.4em;
  text-align: center;
  color: #fff;
}
.paywall-header .discount {
  margin: -16px 0 32px 0;
  text-align: center;
  font-size: 16px;
  color: #fff;
}
.paywall-header .discount strong {
  color: #3fe4b3;
  font-weight: 500;
}
.paywall-header .discount .icon {
  margin: 3px 8px 0 0;
  background-position: -754px -390px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: inline-block;
  width: 18px;
  height: 18.5px;
}
.paywall-header .subtext {
  margin-bottom: 32px;
  color: #fff;
  font-size: 18px;
  line-height: 1.8em;
  text-align: center;
}
.paywall.pix .paywall-header {
  background-color: #1144a7;
  position: relative;
}
.paywall.pix .paywall-header .premium-stars > span {
  border-radius: 0;
}
.paywall.pix .pix-blank-check {
  background-position: -746px -516px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 24px;
  height: 24px;
}
.paywall.pix .pix-brain {
  background-position: -322px -339.5px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 144px;
  height: 149px;
}
.paywall.pix .pix-calendar {
  background-position: 0px -618px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 67.5px;
  height: 54.5px;
}
.paywall.pix .pix-carbon {
  background-position: -468px -339.5px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 114px;
  height: 127px;
}
.paywall.pix .pix-chat {
  background-position: -69.5px -618px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 62px;
  height: 52px;
}
.paywall.pix .pix-checkmark-gray {
  background-position: -746px -542px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 24px;
  height: 24px;
}
.paywall.pix .pix-checkmark {
  background-position: -584px -438px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 24px;
  height: 24px;
}
.paywall.pix .pix-gift {
  background-position: -404px -137.5px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 74px;
  height: 98px;
}
.paywall.pix .pix-globe {
  background-position: 0px -339.5px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 159px;
  height: 157px;
}
.paywall.pix .pix-group {
  background-position: -226px -498.5px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 110.5px;
  height: 98px;
}
.paywall.pix .pix-heart {
  background-position: -404px -237.5px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 66px;
  height: 56px;
}
.paywall.pix .pix-hydrogen {
  background-position: -685px -249.5px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 70px;
  height: 70px;
}
.paywall.pix .pix-interactive {
  background-position: -685px -321.5px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 71px;
  height: 66.5px;
}
.paywall.pix .pix-lightbulb {
  background-position: -624px -202px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 44px;
  height: 72px;
}
.paywall.pix .pix-lock {
  background-position: -685px -457.5px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 73.5px;
  height: 56.5px;
}
.paywall.pix .pix-phone {
  background-position: -685px -390px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 67px;
  height: 65.5px;
}
.paywall.pix .pix-satellite {
  background-position: -161px -339.5px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 159px;
  height: 157px;
}
.paywall-trial {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.paywall-trial .btn {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 158px;
  height: 48px;
  margin-bottom: 24px;
  font-size: 16px;
}
.paywall-trial .trial-active {
  width: 200px;
  opacity: 1;
  background: rgba(0, 0, 0, 0.4);
  border: 0;
  color: white;
}
.paywall-trial p {
  margin: 0;
  font-size: 16px;
  line-height: 34px;
  text-align: center;
  color: rgba(255, 255, 255, 0.5);
}
.premium-trial-settings {
  padding: 8px 16px;
  text-align: center;
  font-size: 16px;
  line-height: 22px;
  color: rgba(0, 0, 0, 0.55);
}
.premium-trial-settings a {
  color: rgba(0, 0, 0, 0.55);
  text-decoration: underline;
}
.premium-trial-settings a:hover {
  color: rgba(0, 0, 0, 0.8);
  text-decoration: none;
}
.premium-stars {
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 0;
}
.premium-stars span {
  display: inline-block;
  border-radius: 50%;
  position: absolute;
  -webkit-animation: twinklingStar ease infinite;
  animation: twinklingStar ease infinite;
}
.premium-stars span.type-1 {
  width: 3px;
  height: 3px;
  background-color: #fff;
}
.premium-stars span.type-2 {
  width: 3px;
  height: 3px;
  background-color: #fedf53;
}
.premium-stars span.type-3 {
  width: 2px;
  height: 2px;
  background-color: #7b8cae;
  box-shadow: 0 0 2px 1px #7b8cae;
}
@-webkit-keyframes twinklingStar {
  0% {
    opacity: 1;
  }
  10% {
    opacity: 0.1;
  }
  20% {
    opacity: 1;
  }
}
@keyframes twinklingStar {
  0% {
    opacity: 1;
  }
  10% {
    opacity: 0.1;
  }
  20% {
    opacity: 1;
  }
}
.paywall-plans {
  display: flex;
  justify-content: center;
  margin-bottom: 0;
  margin-top: 24px;
}
.paywall-plans .plan {
  position: relative;
  width: 300px;
  padding: 0;
  margin-right: 34px;
  border: 0;
  border-radius: 16px;
  background: #fff;
  text-align: center;
  box-shadow: 0 0 15px rgba(0, 0, 0, 0.25);
  overflow: hidden;
  z-index: 2;
}
.paywall-plans .plan:last-child {
  margin-right: 0;
}
.paywall-plans .regular {
  margin-top: 0;
}
.paywall-plans .popular {
  overflow: visible;
  padding-top: 0;
  border-color: #0c6ac7;
}
.paywall-plans .popular.no-tag:before {
  display: none;
}
.paywall-plans .popular:before {
  content: '';
  position: absolute;
  top: -17px;
  right: -18px;
  bottom: -15px;
  left: -18px;
  border: 2px solid #ffde5c;
  border-radius: 23px;
  border-color: #ffb467;
}
.paywall-plans .popular h3 {
  background: #0c6ac7;
  color: #fff;
  border-radius: 10px 10px 0 0;
}
.paywall-plans .popular h5 {
  position: absolute;
  top: -32px;
  left: 0;
  width: 100%;
}
.paywall-plans .popular h5 span {
  display: inline-block;
  background: #ffb467;
  padding: 0 16px;
  line-height: 22px;
  text-transform: uppercase;
  border-radius: 11px;
}
.paywall-plans .pro {
  float: none;
  margin: 0 auto !important;
}
.paywall-plans .banner {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 56px;
  border-radius: 6px 6px 0 0;
  background: #0c6ac7;
  color: #fff;
  font-size: 22px;
  font-weight: bold;
  line-height: 56px;
}
.paywall-plans h3 {
  margin-bottom: 0;
  font-size: 18px;
  font-weight: bold;
  height: 56px;
  line-height: 56px;
  background: #f0f0f0;
  color: #333;
}
.paywall-plans h4 {
  padding: 30px 0;
  margin-bottom: 0;
  font-size: 30px;
  font-weight: bold;
  color: #333;
}
.paywall-plans h4 strong {
  font-size: 28px;
  font-weight: bold;
}
.paywall-plans h4 .original {
  font-weight: normal;
  text-decoration: line-through;
}
.paywall-plans h4 span {
  color: rgba(0, 0, 0, 0.5);
  font-weight: normal;
  font-size: 16px;
}
.paywall-plans h5 {
  margin: 5px 0 0;
  font-size: 13px;
  font-weight: bold;
}
.paywall-plans .pro-expl-wrapper {
  position: relative;
  margin: -8px 0 0;
  padding-bottom: 8px !important;
  font-size: 12px;
  font-weight: bold;
  z-index: 1;
}
.paywall-plans .btn {
  position: relative;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 176px;
  height: 48px;
  margin: 8px 0 30px;
  padding: 0;
  border: 0;
  border-radius: 4px;
  font-size: 16px;
  font-weight: bold;
  background: #00bd8e;
  z-index: 1;
}
.paywall-plans .btn:hover {
  background: #00a47b;
}
.paywall-plans .btn.paymentrequest {
  border: 0;
  background: transparent;
  height: auto;
}
.paywall-legal {
  display: flex;
  justify-content: center;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 8px 0 32px;
  text-align: center;
  color: rgba(255, 255, 255, 0.5);
  font-size: 12px;
  z-index: 101;
}
.paywall-legal .col {
  float: none;
  margin: 0 auto;
}
.paywall-legal p {
  line-height: 1.4em;
}
.paywall-legal p:last-child {
  margin-bottom: 0;
}
.paywall-legal a {
  color: rgba(255, 255, 255, 0.5);
  text-decoration: underline;
}
.paywall-legal a:hover {
  text-decoration: none;
  color: rgba(255, 255, 255, 0.8);
}
.paywall-testimonials p,
.paywall-audience p,
.paywall-features p,
.paywall-gifts-groups p {
  color: #727272;
  font-size: 16px;
  line-height: 1.38em;
}
.paywall-testimonials .container {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.paywall-testimonials .stars-big {
  margin-bottom: 24px;
  background-position: -485.5px -498.5px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 166.5px;
  height: 28px;
}
.paywall-testimonials h2 {
  margin-bottom: 48px;
  font-size: 28px;
}
.paywall-testimonials .col {
  position: relative;
  padding: 0 32px;
  line-height: 1.75em;
}
.paywall-testimonials .quotes {
  margin-bottom: 24px;
}
.paywall-testimonials .quote {
  position: absolute;
  left: 0;
  top: 0;
  background-position: -610px -438px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 21.5px;
  height: 18.5px;
}
.paywall-testimonials .stars {
  margin: 16px 0;
  background-position: -468px -468.5px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 103px;
  height: 17.5px;
}
.paywall-testimonials p {
  margin: 0;
}
.paywall-testimonials .cite {
  color: #999999;
  margin-top: 8px;
}
.paywall-audience .container {
  display: flex;
  justify-content: space-evenly;
}
.paywall-audience .col {
  width: 345px;
  padding: 24px;
  border-radius: 10px;
  background: #fff;
}
.paywall-audience h2 {
  color: #171116;
  font-size: 30px;
  margin: 12px 0 48px;
}
.paywall-audience h3 {
  font-size: 18px;
  font-weight: 600;
}
.paywall-audience .css-sprite-paywall {
  margin: 0;
}
.paywall-audience .students {
  background-position: -483px 0px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 200px;
  height: 200px;
}
.paywall-audience .professionals {
  background-position: -202px -137.5px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 200px;
  height: 200px;
}
.paywall-audience .lifelong {
  background-position: 0px -137.5px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 200px;
  height: 200px;
}
.paywall-audience p {
  margin: 0;
}
.paywall-audience .row {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 222px;
}
.paywall-audience .col {
  width: 376px;
  padding: 40px;
  border-radius: 0;
  margin-right: 24px;
}
.paywall-audience .col:last-child {
  margin-right: 0;
}
.paywall-features .container > div {
  display: flex;
  justify-content: space-evenly;
}
.paywall-features .col {
  width: 582px;
  border: 1px solid #ebebeb;
  border-radius: 0;
  overflow: hidden;
}
.paywall-features .col:first-child {
  margin-right: 36px;
}
.paywall-features .hydrogen {
  background-position: -685px -180.5px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 79px;
  height: 67px;
}
.paywall-features .carbon {
  width: 108px;
  height: 117.5px;
  background-position: 0px -498.5px;
}
.paywall-features header {
  display: flex;
  align-items: center;
  position: relative;
  height: 160px;
  padding: 40px 40px 0;
  background: #f7f7f7;
}
.paywall-features header span {
  flex: none;
  margin: 0 24px 0 0;
}
.paywall-features header p {
  margin: 0;
}
.paywall-features .premium {
  border: 1px solid #ebebeb;
}
.paywall-features .premium header {
  background: #00bd8e;
}
.paywall-features .premium header h3,
.paywall-features .premium header p {
  color: #fff;
}
.paywall-features header,
.paywall-features .premium header {
  background: transparent;
}
.paywall-features header div,
.paywall-features .premium header div {
  width: 320px;
}
.paywall-features header h3,
.paywall-features .premium header h3 {
  color: #000000;
  font-size: 24px;
  font-weight: 600;
}
.paywall-features header p,
.paywall-features .premium header p {
  color: #727272;
}
.paywall-features h3 {
  margin: 0;
  font-size: 28px;
  font-weight: bold;
}
.paywall-features ul {
  margin: 0;
  padding: 0 40px 20px;
}
.paywall-features ul.free li:after {
  background-position: -744.5px -110.5px;
}
.paywall-features ul.free li ul li:before {
  background: #bbb;
}
.paywall-features ul.pix li:after {
  background-position: -584px -438px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 24px;
  height: 24px;
}
.paywall-features ul.pix.free li:after {
  background-position: -746px -542px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 24px;
  height: 24px;
}
.paywall-features ul.pix li.disabled:after {
  background-position: -746px -516px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 24px;
  height: 24px;
  background-image: url(/site_media/sprite-ab25c0a9e13/build/sprites/css-sprite-paywall.png);
  border: none;
  border-radius: 0;
}
@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx) {
  .paywall-features ul.pix li.disabled:after {
    background-image: url(/site_media/sprite-ab25c0a9e13/build/sprites/css-sprite-paywall-x2.png);
    background-size: 772px 710.5px;
  }
}
.paywall-features li {
  position: relative;
  margin: 20px 0;
  padding-right: 40px;
  font-weight: 600;
  font-size: 18px;
}
.paywall-features li:after {
  content: '';
  position: absolute;
  top: 4px;
  right: 0;
  margin-left: 8px;
  background-position: -744.5px -136.5px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 24px;
  height: 24px;
  background-image: url(/site_media/sprite-ab25c0a9e13/build/sprites/css-sprite-paywall.png);
}
@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx) {
  .paywall-features li:after {
    background-image: url(/site_media/sprite-ab25c0a9e13/build/sprites/css-sprite-paywall-x2.png);
    background-size: 772px 710.5px;
  }
}
.paywall-features li.disabled {
  font-weight: normal;
  color: #999999;
}
.paywall-features li.disabled:after {
  border: 2px solid #ebebeb;
  border-radius: 50%;
  background: transparent;
  box-sizing: border-box;
}
.paywall-features li ul {
  padding: 0;
}
.paywall-features li ul li {
  padding-right: 0;
  padding-left: 24px;
}
.paywall-features li ul li:after {
  right: -40px;
}
.paywall-features li ul li:before {
  content: none;
  position: absolute;
  top: 9px;
  left: 0;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #333;
}
.paywall-courses .btn-group {
  margin: 0 auto 24px;
  width: 352px;
  box-shadow: none;
}
.paywall-courses .btn-group .btn {
  width: 176px;
}
.paywall-courses .section-wrapper {
  width: 704px;
  margin: 0 auto;
}
.paywall-courses .section {
  position: relative;
  padding: 40px;
  background: #fff;
}
.paywall-courses .section + .section {
  margin-top: 40px;
}
.paywall-courses h2 {
  font-size: 30px;
  margin-bottom: 48px;
}
.paywall-courses h3 {
  margin-bottom: 16px;
  padding-bottom: 16px;
  border-bottom: 1px solid #e6e6e6;
  font-size: 24px;
  font-weight: bold;
}
.paywall-courses ul {
  margin-bottom: 24px;
  columns: 2;
}
.paywall-courses ul:last-child {
  margin: 0;
}
.paywall-courses li {
  display: inline-flex;
  justify-content: flex-start;
  align-items: flex-start;
  position: relative;
  width: 100%;
  margin: 0 0 12px;
  font-size: 16px;
}
.paywall-courses li span {
  display: inline-block;
  width: 20px;
  height: 20px;
  margin: 3px 8px 0 0;
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
}
.paywall-devices h2 {
  margin-bottom: 48px;
}
.paywall-devices .row {
  display: flex;
  justify-content: center;
  align-items: center;
}
.paywall-devices br {
  display: none;
}
.paywall-devices img {
  display: block;
  width: 990px;
  max-width: 100%;
  height: auto;
  margin: 0 auto 32px;
}
.paywall-devices .btn {
  display: block;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 48px;
  padding: 0 32px;
  margin: 0 auto;
  border: 0;
  border-radius: 6px;
  background: #00bd8e;
  font-size: 18px;
  font-weight: bold;
}
.paywall-devices .btn:hover {
  border: 0;
  background: #00a47b;
}
@media screen and (min-width: 700px) and (max-width: 1200px) {
  .paywall-devices br {
    display: block;
  }
}
.paywall-gifts-groups {
  padding-bottom: 72px;
}
.paywall-gifts-groups .container {
  display: flex;
  justify-content: space-between;
}
.paywall-gifts-groups .test-tube-gift {
  background-position: -685px -84.5px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 57.5px;
  height: 94px;
}
.paywall-gifts-groups .test-tube-group {
  background-position: -483px -202px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 139px;
  height: 121px;
}
.paywall-gifts-groups .plan {
  display: flex;
  position: relative;
  padding: 0 24px 0 0;
}
.paywall-gifts-groups .plan span {
  margin-right: 32px;
}
.paywall-gifts-groups .plan div {
  max-width: 390px;
}
.paywall-gifts-groups .group-plan {
  padding-right: 0;
}
.paywall-gifts-groups .group-plan.expanded .bulk-pricing-text {
  display: block;
}
.paywall-gifts-groups .group-plan .bulk-pricing-text {
  display: none;
  margin-top: -8px;
  font-size: 13px;
  color: #777;
}
.paywall-gifts-groups h3 {
  margin-bottom: 8px;
  font-size: 24px;
  font-weight: bold;
  line-height: 1.3em;
}
.paywall-gifts-groups p {
  margin-bottom: 16px;
  line-height: 1.4em;
}
.paywall-gifts-groups .btn {
  background: #fff;
}
.paywall-gifts-groups .btn-green {
  color: #00bd8e;
}
.paywall-gifts-groups .btn-green:hover {
  border-color: #00a47b;
  color: #00a47b;
}
.paywall-gifts-groups .btn-accent {
  color: #039be5;
}
.paywall-gifts-groups .btn-accent:hover {
  border-color: #038acc;
  color: #038acc;
}
body.gifting-flow #wrapper {
  width: 100%;
  padding: 0;
}
.gifting-flow-header {
  height: 150px;
  position: relative;
  margin-bottom: 48px;
  overflow: hidden;
  background: #1144a7;
}
.gifting-flow-header .container {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
}
.gifting-flow-header .gift-box {
  flex: none;
  background-position: 0px 0px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 481px;
  height: 135.5px;
}
.gifting-flow-header a {
  display: flex;
  align-items: center;
  position: absolute;
  left: 12px;
  top: 24px;
  color: #fff;
  z-index: 1;
}
.gifting-flow-header a:hover {
  color: #fff;
  opacity: 0.8;
}
.gifting-flow-header .css-sprite-chevrons {
  margin-right: 8px;
  background-position: -77px -20px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: inline-block;
  width: 10px;
  height: 16px;
}
.gift-summary {
  width: 332px;
  padding: 48px 24px;
  background: #f9f9f8;
}
.gift-summary h2 {
  margin-bottom: 16px;
  padding-bottom: 16px;
  border-bottom: 1px solid #d8d8d8;
  font-weight: bold;
  font-size: 20px;
  line-height: 26px;
  color: #000000;
}
.gift-summary h3 {
  font-size: 16px;
  font-weight: 600;
  line-height: 22px;
  color: #333;
}
.gift-summary .auto-renew-note {
  margin-top: 4px;
  font-size: 14px;
  line-height: 19px;
  color: rgba(0, 0, 0, 0.4);
}
.gift-summary .auto-renew-note.onetime .onetime,
.gift-summary .auto-renew-note.recurring .recurring {
  display: block;
}
.gift-summary .auto-renew-note div,
.gift-summary .auto-renew-note.onetime span,
.gift-summary .auto-renew-note.recurring span {
  display: none;
}
.gift-summary .turn-off-auto-renew,
.gift-summary .turn-on-auto-renew {
  color: #000000;
  text-decoration: underline;
}
.gift-summary .turn-off-auto-renew:hover,
.gift-summary .turn-on-auto-renew:hover {
  text-decoration: none;
  opacity: 0.8;
}
.gift-summary li {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 24px;
  font-size: 14px;
  line-height: 19px;
  color: #000000;
}
.gift-summary li > span {
  flex: none;
  display: flex;
  justify-content: center;
  width: 49.5px;
  margin-right: 24px;
}
.gift-summary .css-sprite-paywall {
  background-position: -404px -295.5px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 39px;
  height: 41px;
}
.gift-summary .daily-challenges {
  width: 49.5px;
  height: 39px;
  background-position: -624px -276px;
}
.gift-summary .offline-mode {
  width: 29px;
  height: 36px;
  background-position: 0px -674.5px;
}
.gift-success-wrapper {
  display: flex;
  justify-content: center;
}
.gift-success {
  width: 430px;
  margin-bottom: 96px;
  padding: 40px 40px;
  background: #fff;
  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.1);
}
.gift-success header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 32px;
}
.gift-success header h1 {
  font-weight: bold;
  font-size: 28px;
  line-height: 25px;
  color: #000000;
}
.gift-success header span {
  flex: none;
  margin-left: 24px;
  background-position: -110px -498.5px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 114px;
  height: 108px;
}
.gift-success .opt-in {
  margin-bottom: 40px;
  padding: 16px 16px;
  border: 1px solid #eaeaea;
  background: #fbfbfb;
}
.gift-success .opt-in h4 {
  font-weight: 600;
  font-size: 18px;
  line-height: 24px;
  color: #000000;
}
.gift-success .opt-in p {
  font-size: 16px;
  line-height: 22px;
  color: #000000;
  opacity: 0.55;
}
.gift-success .opt-in .checkbox {
  display: inline-flex;
  align-items: center;
  padding: 0;
  font-size: 16px;
  cursor: pointer;
}
.gift-success .opt-in .checkbox input {
  display: none;
}
.gift-success .opt-in .checkbox input:checked + span {
  border-color: #000000;
  background: #000000;
}
.gift-success .opt-in .checkbox span {
  display: inline-block;
  width: 20px;
  height: 20px;
  margin-right: 8px;
  background: #fff;
  border: 1px solid #bbb;
  transition: background-color 100ms linear;
}
.gift-success footer {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.gift-success .btn {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 48px;
  margin-bottom: 24px;
  border: 0;
  background: #000000;
  font-weight: 600;
  font-size: 16px;
}
.gift-success .give-another-gift {
  color: #000000;
  text-decoration: underline;
}
.gift-success .give-another-gift:hover {
  opacity: 0.8;
  text-decoration: none;
}
.gift-purchase-list {
  width: 100%;
  padding: 24px;
  background: #fff;
  border-radius: 10px;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.25);
}
.gift-purchase-list table {
  width: 100%;
  margin: 16px 0 0;
  border-color: #d4d4d4;
}
.gift-purchase-list table td,
.gift-purchase-list table th {
  border-color: #d4d4d4;
  line-height: 1.4em;
  vertical-align: middle;
}
.gift-purchase-list table td:nth-child(1),
.gift-purchase-list table th:nth-child(1) {
  width: 15%;
}
.gift-purchase-list table td:nth-child(2),
.gift-purchase-list table th:nth-child(2) {
  width: 45%;
}
.gift-purchase-list table td:nth-child(3),
.gift-purchase-list table th:nth-child(3) {
  width: 15%;
}
.gift-purchase-list table td:nth-child(4),
.gift-purchase-list table th:nth-child(4) {
  width: 25%;
  line-height: 1.2em;
}
.gift-purchase-list table .nobr {
  white-space: nowrap;
}
.gift-purchase-list .show-gift-summary-modal {
  font-size: 13px;
}
.gift-purchase-list .empty {
  margin: 16px 0 0;
  padding: 16px 24px;
  color: #777;
  text-align: center;
  background: #f7f7f7;
}
.gift-summary-modal {
  width: 400px;
  padding: 0;
}
.gift-summary-modal .gift-summary {
  width: 100%;
  padding: 40px 40px;
  background: transparent;
}
.gift-summary-modal .gift-summary .auto-renew-note {
  color: #000000;
}
.gift-summary-modal .close {
  position: absolute;
  right: 24px;
  top: 24px;
}
.turn-off-recurring-gift-modal {
  width: 400px;
  padding: 0;
}
.turn-off-recurring-gift-modal .gift-summary {
  width: 100%;
  padding: 40px 40px;
  background: transparent;
}
.turn-off-recurring-gift-modal p {
  margin-bottom: 22px;
  font-size: 16px;
  line-height: 22px;
  color: #000000;
}
.turn-off-recurring-gift-modal footer {
  display: flex;
  justify-content: space-between;
}
.turn-off-recurring-gift-modal footer span {
  flex: 1;
  display: flex;
  justify-content: center;
  align-items: center;
}
.turn-off-recurring-gift-modal .btn {
  height: 48px;
  border: 0;
  border-radius: 6px;
  font-size: 16px;
  background: #000000;
}
.turn-off-recurring-gift-modal .btn-link {
  color: #000000;
  text-decoration: underline;
}
.turn-off-recurring-gift-modal .btn-link:hover {
  text-decoration: none;
  opacity: 0.8;
}
.turn-off-recurring-gift-modal .close {
  position: absolute;
  right: 24px;
  top: 24px;
}
a.gift-promo-banner {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 52px;
  background: #1444a7;
  color: #fff;
  font-size: 16px;
  line-height: 1.4em;
  z-index: 390;
}
a.gift-promo-banner:hover {
  color: #fff;
}
a.gift-promo-banner.valentines {
  color: #000000;
  background: #fdf1ef;
}
a.gift-promo-banner.mothers-day,
a.gift-promo-banner.mothers-day.refreshed-banner {
  background: #f7d79a;
  color: #000000;
}
a.gift-promo-banner.mothers-day .text,
a.gift-promo-banner.mothers-day.refreshed-banner .text {
  font-weight: 600;
}
a.gift-promo-banner.mothers-day strong,
a.gift-promo-banner.mothers-day.refreshed-banner strong {
  height: 30px;
  border-radius: 6px;
  padding: 2px 12px;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  font-size: 12px;
  font-weight: 700;
  white-space: nowrap;
  text-decoration: none;
  background: #000000;
  color: #fff;
  border: 0;
}
a.gift-promo-banner.mothers-day strong:hover,
a.gift-promo-banner.mothers-day.refreshed-banner strong:hover {
  color: #fff;
  background: #4c4c4c;
}
a.gift-promo-banner.mothers-day .box,
a.gift-promo-banner.mothers-day.refreshed-banner .box {
  background-position: -685px -582px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 34px;
  height: 34px;
}
a.gift-promo-banner .container {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}
a.gift-promo-banner .box {
  flex: none;
  margin-right: 16px;
  background-position: -226px -618px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 39px;
  height: 35px;
}
a.gift-promo-banner .valentines {
  background-position: -445px -295.5px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 35px;
  height: 35px;
}
a.gift-promo-banner .text {
  font-weight: bold;
}
a.gift-promo-banner .text .valentines {
  display: inline;
}
a.gift-promo-banner .text .valentines.save {
  color: #e1503c;
}
a.gift-promo-banner strong {
  margin-left: 24px;
  font-weight: 600;
  border-bottom: 1px solid #fff;
}
a.gift-promo-banner strong.valentines {
  border-bottom: 1px solid #000000;
}
a.gift-promo-banner .close-wrapper {
  display: flex;
  align-items: center;
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
}
a.gift-promo-banner .close-btn {
  transition: opacity 100ms linear;
  background-position: -244px -185px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 14px;
  height: 15px;
}
a.gift-promo-banner .close-btn:hover {
  opacity: 0.8;
}
.paywall-free-trial-modal {
  width: 800px;
  height: 594px;
  padding-top: 32px;
  border-radius: 10px;
  overflow: hidden;
}
.paywall-free-trial-modal.with-intro.step-1 .step-1 {
  display: block;
}
.paywall-free-trial-modal.with-intro.step-1 .step-0 {
  display: none;
}
.paywall-free-trial-modal.with-intro .step-1 {
  display: none;
}
.paywall-free-trial-modal.with-intro .options button:first-child {
  padding-right: 72px;
}
.paywall-free-trial-modal.step-2 .step-0,
.paywall-free-trial-modal.step-2 .step-1 {
  display: none;
}
.paywall-free-trial-modal.step-2 .step-2 {
  display: block;
}
.paywall-free-trial-modal h3 {
  margin-bottom: 24px;
  font-size: 28px;
  font-weight: bold;
  line-height: 1.25em;
  text-align: center;
}
.paywall-free-trial-modal footer {
  position: absolute;
  bottom: 32px;
  left: 0;
  width: 100%;
}
.paywall-free-trial-modal .btn {
  display: block;
  margin: 0 auto;
  padding: 9px 0;
  border: 0;
}
.paywall-free-trial-modal .btn-accent {
  height: 48px;
  background: #000000;
  font-size: 16px;
  font-weight: bold;
}
.paywall-free-trial-modal .step-2 p {
  margin-bottom: 72px;
  font-size: 28px;
  font-weight: bold;
  line-height: 1.25em;
  text-align: center;
  color: #161616;
}
.paywall-free-trial-modal .step-2 p strong {
  color: #00bd8e;
}
.paywall-free-trial-modal .header-img {
  padding: 0 88px;
  margin: 24px 0;
}
.paywall-free-trial-modal .header-img > span {
  display: block;
  width: 100%;
  padding: 72px 0;
  margin-bottom: 24px;
  border-radius: 20px;
  background: #fbfbfb;
}
.paywall-free-trial-modal .header-img > span > span {
  display: block;
  width: 576px;
  height: 45px;
  background: url(/site_media/version-a2705de002/images/paywall/paywall-header-premium-btn.png) 0 0 no-repeat;
  background-size: 576px 45px;
}
.paywall-free-trial-options {
  margin-bottom: 32px;
  padding: 0 88px;
}
.paywall-free-trial-options .option {
  position: relative;
  padding: 30px 24px 30px 202px;
  border: 1px solid transparent;
  border-radius: 20px;
  background: #fbfbfb;
  text-align: left;
  overflow: hidden;
  -webkit-transition: border-color 100ms linear;
  transition: border-color 100ms linear;
}
.paywall-free-trial-options .option.active {
  border-color: #ffc500;
  cursor: default;
}
.paywall-free-trial-options .option.active:before {
  border-color: #161616;
  background-color: #161616;
}
.paywall-free-trial-options .option:hover {
  border-color: #ffc500;
}
.paywall-free-trial-options .option:before {
  content: '';
  position: absolute;
  top: 50%;
  left: 24px;
  width: 22px;
  height: 22px;
  margin-top: -11px;
  border: 1px solid #919191;
  border-radius: 50%;
  -webkit-transition: border-color 100ms linear, background-color 100ms linear;
  transition: border-color 100ms linear, background-color 100ms linear;
}
.paywall-free-trial-options .option + button {
  margin-top: 24px;
}
.paywall-free-trial-options .icon {
  position: absolute;
  top: 50%;
  left: 70px;
  margin-top: -58.75px;
  width: 108px;
  height: 117.5px;
  background-position: 0px -498.5px;
}
.paywall-free-trial-options .icon.hydrogen {
  left: 85px;
  margin-top: -33.5px;
  background-position: -685px -180.5px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 79px;
  height: 67px;
}
.paywall-free-trial-options h4 {
  margin: 0;
  font-size: 22px;
  font-weight: bold;
  line-height: 1.25em;
}
.paywall-free-trial-options h5 {
  margin-bottom: 8px;
  font-size: 18px;
  line-height: 1.25em;
}
.paywall-free-trial-options p {
  margin: 0;
  font-size: 16px;
  line-height: 1.25em;
  color: #919191;
}
.paywall-free-trial-options .coupon {
  position: absolute;
  top: 320px;
  right: -94px;
  width: 300px;
  border: 1px solid #07a17b;
  background: #00bd8e;
  text-align: center;
  color: #fff;
  font-size: 20px;
  line-height: 1.6em;
  -webkit-transform: translate(0, -300px) rotate(32deg);
  transform: translate(0, -300px) rotate(32deg);
}
.refund-request {
  padding: 40px 0;
}
.refund-request form.not-what-i-expected .explanation,
.refund-request form.another-reason .explanation {
  display: block;
}
.refund-request form.not-what-i-expected .explanation label .default {
  display: none;
}
.refund-request form.not-what-i-expected .explanation label .alternative {
  display: inline;
}
.refund-request form .btn {
  width: 276px;
  height: 44px;
  background: #000000;
  border: 0;
  font-size: 16px;
}
.refund-request form .btn.disabled,
.refund-request form .btn[disabled] {
  opacity: 0.15;
}
.refund-request h1 {
  margin-bottom: 16px;
  font-weight: bold;
}
.refund-request fieldset {
  margin-bottom: 24px;
}
.refund-request fieldset p {
  margin: -8px 0 8px;
  font-size: 13px;
  color: #899098;
}
.refund-request label {
  margin-bottom: 12px;
}
.refund-request label.required:after {
  content: '*';
  color: #e91e63;
}
.refund-request .explanation label .alternative {
  display: none;
}
.refund-request .errorlist {
  margin: -8px 0 8px;
}
.refund-request select {
  width: 476px;
  font-size: 13px;
  line-height: 1em;
  color: #333;
  box-shadow: none;
}
.refund-request textarea {
  width: 100%;
  height: 298px;
  resize: vertical;
}
.refund-request .status {
  padding: 56px 40px;
  margin: 24px auto;
  background: #fff;
  border: 1px solid #d8d8d8;
  border-radius: 4px;
  text-align: center;
}
.refund-request .status .img {
  background-position: 0px 0px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: inline-block;
  width: 128.5px;
  height: 128.5px;
}
.refund-request .status h1,
.refund-request .status p {
  width: 565px;
  max-width: 100%;
  padding: 0;
  margin: 0 auto;
}
.refund-request .status h1 {
  padding-top: 16px;
  font-size: 28px;
  line-height: 1.2em;
  color: #000000;
}
.refund-request .status p {
  padding-top: 32px;
  font-size: 18px;
  line-height: 1.6em;
  color: #535353;
}
.refund-request .status p.footnote {
  padding-top: 24px;
  font-size: 14px;
  line-height: 1.42em;
}
.refund-request .status p a {
  color: #535353;
  text-decoration: underline;
}
.refund-request .status p a:hover {
  opacity: 0.7;
}
.refund-request .status .btn {
  height: 48px;
  padding: 0;
  margin-top: 40px;
  background: #000000;
  border: 0;
  border-radius: 6px;
  font-weight: bold;
  font-size: 16px;
  line-height: 48px;
  color: #fff;
}
.ask-bubble {
  background-position: -185.5px -618px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: inline-block;
  width: 38.5px;
  height: 38.5px;
}
.learn-qanda-wrapper {
  text-align: center;
}
.learn-qanda-wrapper .btn {
  width: 204px;
  font-weight: bold;
}
.paid-account-page .acct-settings h1 {
  font-size: 24px;
  font-weight: 600;
}
.paid-account-page .acct-settings h4,
.paid-account-page .acct-settings h5 {
  font-size: 18px;
  font-weight: 600;
}
.paid-account-page .acct-settings .section-header {
  border: 0;
  padding-bottom: 0;
}
.paid-account-page .acct-settings .paid-account-section,
.paid-account-page .acct-settings .gift-purchase-list {
  box-shadow: none;
  border-radius: 0;
}
.paid-account-page .acct-settings .paid-account-main {
  background: #fff;
}
.paid-account-page .acct-settings .paid-account-main h4 {
  color: #000000;
}
.paid-account-page .acct-settings .courses-link {
  text-align: center;
}
.paid-account-page .acct-settings .courses-link a {
  color: #000000;
  opacity: 0.7;
  font-weight: normal;
  text-decoration: underline;
}
.paid-account-page .acct-settings .sidebar {
  border: 0;
}
.paid-account-row {
  display: flex;
  justify-content: space-between;
  float: left;
  width: 100%;
}
@media screen and (min-width: 700px) and (max-width: 1200px) {
  .paid-account-row {
    margin-bottom: 16px;
  }
}
.paid-account-row.gift-row > div {
  flex: 1;
}
.paid-account-row.gift-row > div.gift-purchase-list {
  margin-bottom: 24px;
}
.help-section {
  position: relative;
  margin: 0 0 24px 24px;
  padding: 24px 32px 32px;
  background: #fff;
}
.help-section p {
  margin-bottom: 24px;
}
.help-section .float-right {
  float: right;
}
.help-section .settings-mail {
  background-position: -130.5px 0px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 125px;
  height: 125px;
}
.help-section .btn {
  background: #000000;
  color: #fff;
  padding: 10px 20px;
  border: none;
  border-radius: 5px;
  font-weight: bold;
}
.paid-account-section {
  position: relative;
  flex: 1;
  margin: 0 0 24px 24px;
  padding: 24px 32px 32px;
  border-radius: 10px;
  box-shadow: 0 3px 5px rgba(0, 0, 0, 0.25);
  background: #fff;
}
.paid-account-section:first-child {
  margin-left: 0;
}
.paid-account-section h4 {
  margin-bottom: 16px;
  font-weight: bold;
}
.paid-account-section p,
.paid-account-section h5 {
  margin-bottom: 24px;
  line-height: 1.5em;
}
.paid-account-section p:last-child,
.paid-account-section h5:last-child {
  margin: 0;
}
.paid-account-section h5 {
  font-weight: bold;
}
.paid-account-section a,
.paid-account-section .btn-link {
  color: #333;
  text-decoration: underline;
}
.paid-account-section a:hover,
.paid-account-section .btn-link:hover {
  color: #919191;
  text-decoration: none;
}
.paid-account-section .btn {
  text-decoration: none;
}
@media screen and (min-width: 700px) and (max-width: 1200px) {
  .paid-account-section {
    margin-left: 16px;
  }
}
.paid-account-main .standalone-upgrade-btn {
  display: flex;
  justify-content: center;
  margin-top: 24px;
}
.paid-account-main .standalone-upgrade-btn .btn {
  width: 176px;
}
.paid-account-main .standalone-upgrade-btn .btn a {
  color: #fff;
  text-decoration: none;
}
.paid-account-courses ul {
  display: flex;
  justify-content: space-between;
}
.paid-account-courses ul li {
  flex: 1;
  width: auto;
  margin: 0 16px 0 0;
}
.paid-account-courses ul li:last-child {
  margin: 0;
}
@media screen and (min-width: 700px) and (max-width: 1200px) {
  .paid-account-courses ul li:first-child {
    display: none;
  }
}
.paid-account-courses .courses-item {
  height: 285px;
  margin: 0;
  color: #fff;
  text-decoration: none;
  background: #fff;
  border: 2px solid rgba(0, 0, 0, 0.14);
  border-radius: 0;
  box-shadow: none;
  transition: background-color 100ms linear, box-shadow 100ms linear;
}
.paid-account-courses .courses-item:hover {
  border-color: rgba(0, 0, 0, 0.2);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}
.paid-account-courses .courses-item .coming-soon {
  background-position: -337px -231px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 85px;
  height: 26px;
}
.paid-account-courses .courses-item .new-release {
  background-position: -337px -203px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 86px;
  height: 26px;
}
.paid-account-courses .courses-item h3 {
  position: absolute;
  bottom: 16px;
  left: 24px;
  right: 24px;
  color: #000000;
  font-size: 16px;
}
.paid-account-courses .courses-item p {
  font-size: 10px;
  text-align: left;
}
.paid-account-courses .courses-item .img {
  top: 57px;
  right: 8px;
  bottom: 86px;
  left: 8px;
}
.paid-account-courses .coming-soon-wrapper .banner {
  position: absolute;
  top: -8px;
  left: -8px;
}
.paid-account-courses .admin-links {
  display: none;
}
.paid-account-courses p {
  margin: 16px 0 0;
  text-align: right;
}
.paid-account-courses p a {
  color: #039be5;
  font-weight: bold;
  text-decoration: none;
}
.paid-account-courses p a:hover {
  color: #0277bd;
}
.paid-account-perks {
  margin-top: 16px;
  padding-top: 16px;
  border-top: 1px solid #f0f0f0;
}
.paid-account-perks .content {
  display: flex;
}
.paid-account-perks .img {
  width: 315px;
  margin-right: 24px;
}
.paid-account-perks .text {
  flex: 1;
}
.paid-account-perks h5 em {
  font-style: normal;
  font-weight: normal;
}
.paid-account-perks .btn-green {
  padding: 3px 48px;
}
.paid-account-perks .redeemed {
  font-size: 13px;
  text-transform: uppercase;
  color: #919191;
}
.paid-account-perks .redeemed:before {
  content: '';
  margin: -10px -4px -15px 0;
  opacity: 0.5;
  background-image: url(/site_media/sprite-68d8d29d003/build/sprites/css-sprite-quiz.png);
  background-position: -403px -137px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: inline-block;
  width: 41px;
  height: 41px;
  -webkit-transform: scale(0.53658537);
  transform: scale(0.53658537);
  -webkit-transform-origin: center left;
  transform-origin: center left;
}
@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx) {
  .paid-account-perks .redeemed:before {
    background-image: url(/site_media/sprite-68d8d29d003/build/sprites/css-sprite-quiz-x2.png);
    background-size: 479px 448px;
  }
}
.paid-account-perks .perk-modal-trigger.active .redeemed {
  display: block;
}
.paid-account-perks .perk-modal-trigger.active .btn {
  display: none;
}
.paid-account-perks .perk-modal-trigger .redeemed {
  display: none;
}
.paid-account-perks-modal {
  width: 728px;
  padding: 48px 96px;
  border-radius: 10px;
}
.paid-account-perks-modal h4 {
  border-color: #d4d4d4;
  text-align: center;
  font-size: 28px;
  font-weight: bold;
}
.paid-account-perks-modal .modal-body {
  display: flex;
  justify-content: space-evenly;
  align-items: center;
  padding: 24px 0;
  font-size: 15px;
}
.paid-account-perks-modal .text {
  flex: 1;
}
.paid-account-perks-modal .img {
  width: 170px;
  margin-left: 32px;
}
.paid-account-perks-modal h5 {
  margin-bottom: 16px;
  font-size: 22px;
  font-weight: bold;
}
.paid-account-perks-modal p {
  margin-bottom: 16px;
}
.paid-account-perks-modal p a {
  color: #333;
  text-decoration: underline;
}
.paid-account-perks-modal p a:hover {
  color: #919191;
  text-decoration: none;
}
.paid-account-perks-modal .modal-footer {
  display: flex;
  justify-content: space-evenly;
}
.paid-account-perks-modal .modal-footer .btn {
  width: 176px;
  height: 34px;
}
.paid-account-plan h5 {
  font-weight: bold;
  font-size: 18px;
}
.paid-account-plan .alert {
  margin-bottom: 16px;
}
.paid-account-plan .alert p:last-child {
  margin: 0;
}
.paid-account-plan .legal {
  font-size: 13px;
  color: #919191;
}
.paid-account-payment-info {
  flex: none;
  width: 348px;
}
.paid-account-payment-info .spinner {
  position: absolute;
  display: none;
  top: 16px;
  right: 16px;
}
.paid-account-payment-info .spinner.visible {
  display: block;
}
.paid-account-payment-info .btn {
  margin-bottom: 4px;
}
.paid-account-payment-info .subtext {
  padding-left: 8px;
  font-size: 10px;
}
@media screen and (min-width: 700px) and (max-width: 1200px) {
  .paid-account-payment-info {
    flex: 1;
  }
  .paid-account-payment-info .btn {
    width: 176px;
  }
}
.paid-account-paytm .history {
  margin-bottom: 24px;
}
.paid-account-paytm .history.expanded .view-receipts {
  display: none;
}
.paid-account-paytm .history.expanded .hide-receipts {
  display: inline;
}
.paid-account-paytm .history.expanded .table {
  display: table;
}
.paid-account-paytm .history p {
  margin: 0;
}
.paid-account-paytm .history table {
  margin-top: 8px;
}
.payment-switch-plan-modal.canceling .upgrading-only {
  display: none;
}
.payment-switch-plan-modal.canceling .canceling-only {
  display: inline;
}
.payment-switch-plan-modal form {
  margin: 0;
}
.payment-switch-plan-modal .btn {
  margin-bottom: 16px;
  padding: 6px 0;
}
.payment-switch-plan-modal a {
  display: inline-block;
  line-height: 1.3em;
}
.payment-switch-plan-modal .canceling-only {
  display: none;
}
.paid-cancel-modal {
  text-align: left;
}
.paid-cancel-modal .modal-body h3 {
  margin-bottom: 12px;
  font-weight: bold;
  text-align: left;
}
.paid-cancel-modal .modal-body ul {
  font-size: 15px;
}
.paid-cancel-modal .btn {
  float: left;
  width: 48%;
  font-size: 15px;
}
.paid-cancel-modal .btn:first-child {
  margin-right: 4%;
}
.paid-cancel-modal #paid-cancel {
  background: #e91e63;
  border-color: #e91e63;
  color: #fff;
}
.paid-cancel-modal #paid-cancel:hover {
  opacity: 0.8;
}
.paid-cancel-survey .modal-body {
  text-align: left;
}
.paid-cancel-survey p {
  margin: 0;
}
.paid-cancel-survey ul {
  margin: 0;
  list-style: none;
}
.paid-cancel-survey li label {
  position: relative;
  padding-left: 20px;
  margin: 0;
  font-weight: normal;
}
.paid-cancel-survey li label input {
  position: absolute;
  top: 6px;
  left: 0;
  margin: 0;
}
.paid-cancel-survey label {
  font-weight: bold;
}
.paid-cancel-survey textarea {
  width: 100%;
  height: 120px;
}
.paid-cancel-survey .btn {
  width: 48%;
  float: left;
}
.paid-cancel-survey .btn:first-child {
  margin-right: 4%;
}
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .viz-elm .s.r > .s {
    flex-basis: auto !important;
  }
  .viz-elm .s.r > .s.ctr {
    flex-basis: auto !important;
  }
}
.viz-elm .explain {
  border: 6px solid #ae790f !important;
}
.viz-elm .explain > .s {
  border: 4px dashed #0097a7 !important;
}
.viz-elm .ctr {
  border: none !important;
}
.viz-elm .explain > .ctr > .s {
  border: 4px dashed #0097a7 !important;
}
.viz-elm .s.e.ic {
  display: block;
}
.viz-elm .s:focus {
  outline: none;
}
.viz-elm .ui {
  width: 100%;
  height: auto;
  min-height: 100%;
}
.viz-elm .ui.s.hf {
  height: 100%;
}
.viz-elm .ui.s.hf > .hf {
  height: 100%;
}
.viz-elm .ui > .fr.nb {
  position: fixed;
}
.viz-elm .nb {
  position: relative;
  border: none;
  display: flex;
  flex-direction: row;
  flex-basis: auto;
}
.viz-elm .nb.e {
  display: flex;
  flex-direction: column;
  white-space: pre;
}
.viz-elm .dandy-base > .nb.e.fr {
  z-index: 900;
}
.viz-elm .nb.e.hbh {
  z-index: 0;
}
.viz-elm .nb.e.hbh > .bh {
  z-index: -1;
}
.viz-elm .nb.e.sbt > .t.hf {
  flex-grow: 0;
}
.viz-elm .nb.e.sbt > .t.wf {
  align-self: auto !important;
}
.viz-elm .nb.e > .hc {
  height: auto;
}
.viz-elm .nb.e > .hf {
  flex-grow: 100000;
}
.viz-elm .nb.e > .wf {
  width: 100%;
}
.viz-elm .nb.e > .wc {
  align-self: flex-start;
}
.viz-elm .nb.e.ct {
  justify-content: flex-start;
}
.viz-elm .nb.e > .s.at {
  margin-bottom: auto !important;
  margin-top: 0 !important;
}
.viz-elm .nb.e.cb {
  justify-content: flex-end;
}
.viz-elm .nb.e > .s.ab {
  margin-top: auto !important;
  margin-bottom: 0 !important;
}
.viz-elm .nb.e.cr {
  align-items: flex-end;
}
.viz-elm .nb.e > .s.ar {
  align-self: flex-end;
}
.viz-elm .nb.e.cl {
  align-items: flex-start;
}
.viz-elm .nb.e > .s.al {
  align-self: flex-start;
}
.viz-elm .nb.e.ccx {
  align-items: center;
}
.viz-elm .nb.e > .s.cx {
  align-self: center;
}
.viz-elm .nb.e.ccy > .s {
  margin-top: auto;
  margin-bottom: auto;
}
.viz-elm .nb.e > .s.cy {
  margin-top: auto !important;
  margin-bottom: auto !important;
}
.viz-elm .nb.a {
  position: absolute;
  bottom: 100%;
  left: 0;
  width: 100%;
  z-index: 20;
  margin: 0 !important;
  pointer-events: none;
}
.viz-elm .nb.a > .hf {
  height: auto;
}
.viz-elm .nb.a > .wf {
  width: 100%;
}
.viz-elm .nb.a > * {
  pointer-events: auto;
}
.viz-elm .nb.b {
  position: absolute;
  bottom: 0;
  left: 0;
  height: 0;
  width: 100%;
  z-index: 20;
  margin: 0 !important;
  pointer-events: none;
}
.viz-elm .nb.b > * {
  pointer-events: auto;
}
.viz-elm .nb.b > .hf {
  height: auto;
}
.viz-elm .nb.or {
  position: absolute;
  left: 100%;
  top: 0;
  height: 100%;
  margin: 0 !important;
  z-index: 20;
  pointer-events: none;
}
.viz-elm .nb.or > * {
  pointer-events: auto;
}
.viz-elm .nb.ol {
  position: absolute;
  right: 100%;
  top: 0;
  height: 100%;
  margin: 0 !important;
  z-index: 20;
  pointer-events: none;
}
.viz-elm .nb.ol > * {
  pointer-events: auto;
}
.viz-elm .nb.fr {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  margin: 0 !important;
  pointer-events: none;
}
.viz-elm .nb.fr > * {
  pointer-events: auto;
}
.viz-elm .nb.bh {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  margin: 0 !important;
  z-index: 0;
  pointer-events: none;
}
.viz-elm .nb.bh > * {
  pointer-events: auto;
}
.viz-elm .s {
  position: relative;
  border: none;
  flex-shrink: 0;
  display: flex;
  flex-direction: row;
  flex-basis: auto;
  resize: none;
  font-feature-settings: inherit;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border-width: 0;
  border-style: solid;
  font-size: inherit;
  color: inherit;
  font-family: inherit;
  line-height: 1;
  font-weight: inherit;
  text-decoration: none;
  font-style: inherit;
}
.viz-elm .s.wrp {
  flex-wrap: wrap;
}
.viz-elm .s.notxt {
  -moz-user-select: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.viz-elm .s.cptr {
  cursor: pointer;
}
.viz-elm .s.ctxt {
  cursor: text;
}
.viz-elm .s.ppe {
  pointer-events: none !important;
}
.viz-elm .s.cpe {
  pointer-events: auto !important;
}
.viz-elm .s.clr {
  opacity: 0;
}
.viz-elm .s.oq {
  opacity: 1;
}
.viz-elm .s.hvclr:hover {
  opacity: 0;
}
.viz-elm .s.hvoq:hover {
  opacity: 1;
}
.viz-elm .s.fcsclr:focus {
  opacity: 0;
}
.viz-elm .s.fcsoq:focus {
  opacity: 1;
}
.viz-elm .s.atvclr:active {
  opacity: 0;
}
.viz-elm .s.atvoq:active {
  opacity: 1;
}
.viz-elm .s.ts {
  transition: transform 160ms, opacity 160ms, filter 160ms, background-color 160ms, color 160ms, font-size 160ms;
}
.viz-elm .s.sb {
  overflow: auto;
  flex-shrink: 1;
}
.viz-elm .s.sbx {
  overflow-x: auto;
}
.viz-elm .s.sbx.r {
  flex-shrink: 1;
}
.viz-elm .s.sby {
  overflow-y: auto;
}
.viz-elm .s.sby.c {
  flex-shrink: 1;
}
.viz-elm .s.sby.e {
  flex-shrink: 1;
}
.viz-elm .s.cp {
  overflow: hidden;
}
.viz-elm .s.cpx {
  overflow-x: hidden;
}
.viz-elm .s.cpy {
  overflow-y: hidden;
}
.viz-elm .s.wc {
  width: auto;
}
.viz-elm .s.bn {
  border-width: 0;
}
.viz-elm .s.bd {
  border-style: dashed;
}
.viz-elm .s.bdt {
  border-style: dotted;
}
.viz-elm .s.bs {
  border-style: solid;
}
.viz-elm .s.t {
  white-space: pre;
  display: inline-block;
}
.viz-elm .s.it {
  line-height: 1.05;
}
.viz-elm .s.e {
  display: flex;
  flex-direction: column;
  white-space: pre;
}
.viz-elm .s.e.hbh {
  z-index: 0;
}
.viz-elm .s.e.hbh > .bh {
  z-index: -1;
}
.viz-elm .s.e.sbt > .t.hf {
  flex-grow: 0;
}
.viz-elm .s.e.sbt > .t.wf {
  align-self: auto !important;
}
.viz-elm .s.e > .hc {
  height: auto;
}
.viz-elm .s.e > .hf {
  flex-grow: 100000;
}
.viz-elm .s.e > .wf {
  width: 100%;
}
.viz-elm .s.e > .wc {
  align-self: flex-start;
}
.viz-elm .s.e.ct {
  justify-content: flex-start;
}
.viz-elm .s.e > .s.at {
  margin-bottom: auto !important;
  margin-top: 0 !important;
}
.viz-elm .s.e.cb {
  justify-content: flex-end;
}
.viz-elm .s.e > .s.ab {
  margin-top: auto !important;
  margin-bottom: 0 !important;
}
.viz-elm .s.e.cr {
  align-items: flex-end;
}
.viz-elm .s.e > .s.ar {
  align-self: flex-end;
}
.viz-elm .s.e.cl {
  align-items: flex-start;
}
.viz-elm .s.e > .s.al {
  align-self: flex-start;
}
.viz-elm .s.e.ccx {
  align-items: center;
}
.viz-elm .s.e > .s.cx {
  align-self: center;
}
.viz-elm .s.e.ccy > .s {
  margin-top: auto;
  margin-bottom: auto;
}
.viz-elm .s.e > .s.cy {
  margin-top: auto !important;
  margin-bottom: auto !important;
}
.viz-elm .s.r {
  display: flex;
  flex-direction: row;
}
.viz-elm .s.r > .s {
  flex-basis: 0%;
}
.viz-elm .s.r > .s.we {
  flex-basis: auto;
}
.viz-elm .s.r > .hf {
  align-self: stretch !important;
}
.viz-elm .s.r > .hfp {
  align-self: stretch !important;
}
.viz-elm .s.r > .wf {
  flex-grow: 100000;
}
.viz-elm .s.r > .ctr {
  flex-grow: 0;
  flex-basis: auto;
  align-self: stretch;
}
.viz-elm .s.r > u:first-of-type.acr {
  flex-grow: 1;
}
.viz-elm .s.r > s:first-of-type.accx {
  flex-grow: 1;
}
.viz-elm .s.r > s:first-of-type.accx > .cx {
  margin-left: auto !important;
}
.viz-elm .s.r > s:last-of-type.accx {
  flex-grow: 1;
}
.viz-elm .s.r > s:last-of-type.accx > .cx {
  margin-right: auto !important;
}
.viz-elm .s.r > s:only-of-type.accx {
  flex-grow: 1;
}
.viz-elm .s.r > s:only-of-type.accx > .cy {
  margin-top: auto !important;
  margin-bottom: auto !important;
}
.viz-elm .s.r > s:last-of-type.accx ~ u {
  flex-grow: 0;
}
.viz-elm .s.r > u:first-of-type.acr ~ s.accx {
  flex-grow: 0;
}
.viz-elm .s.r.ct {
  align-items: flex-start;
}
.viz-elm .s.r > .s.at {
  align-self: flex-start;
}
.viz-elm .s.r.cb {
  align-items: flex-end;
}
.viz-elm .s.r > .s.ab {
  align-self: flex-end;
}
.viz-elm .s.r.cr {
  justify-content: flex-end;
}
.viz-elm .s.r.cl {
  justify-content: flex-start;
}
.viz-elm .s.r.ccx {
  justify-content: center;
}
.viz-elm .s.r.ccy {
  align-items: center;
}
.viz-elm .s.r > .s.cy {
  align-self: center;
}
.viz-elm .s.r.sev {
  justify-content: space-between;
}
.viz-elm .s.c {
  display: flex;
  flex-direction: column;
}
.viz-elm .s.c > .hf {
  flex-grow: 100000;
}
.viz-elm .s.c > .wf {
  width: 100%;
}
.viz-elm .s.c > .wfp {
  width: 100%;
}
.viz-elm .s.c > .wc {
  align-self: flex-start;
}
.viz-elm .s.c > u:first-of-type.acb {
  flex-grow: 1;
}
.viz-elm .s.c > s:first-of-type.accy {
  flex-grow: 1;
}
.viz-elm .s.c > s:first-of-type.accy > .cy {
  margin-top: auto !important;
  margin-bottom: 0 !important;
}
.viz-elm .s.c > s:last-of-type.accy {
  flex-grow: 1;
}
.viz-elm .s.c > s:last-of-type.accy > .cy {
  margin-bottom: auto !important;
  margin-top: 0 !important;
}
.viz-elm .s.c > s:only-of-type.accy {
  flex-grow: 1;
}
.viz-elm .s.c > s:only-of-type.accy > .cy {
  margin-top: auto !important;
  margin-bottom: auto !important;
}
.viz-elm .s.c > s:last-of-type.accy ~ u {
  flex-grow: 0;
}
.viz-elm .s.c > u:first-of-type.acb ~ s.accy {
  flex-grow: 0;
}
.viz-elm .s.c.ct {
  justify-content: flex-start;
}
.viz-elm .s.c > .s.at {
  margin-bottom: auto;
}
.viz-elm .s.c.cb {
  justify-content: flex-end;
}
.viz-elm .s.c > .s.ab {
  margin-top: auto;
}
.viz-elm .s.c.cr {
  align-items: flex-end;
}
.viz-elm .s.c > .s.ar {
  align-self: flex-end;
}
.viz-elm .s.c.cl {
  align-items: flex-start;
}
.viz-elm .s.c > .s.al {
  align-self: flex-start;
}
.viz-elm .s.c.ccx {
  align-items: center;
}
.viz-elm .s.c > .s.cx {
  align-self: center;
}
.viz-elm .s.c.ccy {
  justify-content: center;
}
.viz-elm .s.c > .ctr {
  flex-grow: 0;
  flex-basis: auto;
  width: 100%;
  align-self: stretch !important;
}
.viz-elm .s.c.sev {
  justify-content: space-between;
}
.viz-elm .s.g {
  display: -ms-grid;
}
.viz-elm .s.g > .gp > .s {
  width: 100%;
}
.viz-elm .s.g > .s.at {
  justify-content: flex-start;
}
.viz-elm .s.g > .s.ab {
  justify-content: flex-end;
}
.viz-elm .s.g > .s.ar {
  align-items: flex-end;
}
.viz-elm .s.g > .s.al {
  align-items: flex-start;
}
.viz-elm .s.g > .s.cx {
  align-items: center;
}
.viz-elm .s.g > .s.cy {
  justify-content: center;
}
.viz-elm .s.pg {
  display: block;
}
.viz-elm .s.pg > .s:first-child {
  margin: 0 !important;
}
.viz-elm .s.pg > .s.al:first-child + .s {
  margin: 0 !important;
}
.viz-elm .s.pg > .s.ar:first-child + .s {
  margin: 0 !important;
}
.viz-elm .s.pg > .s.ar {
  float: right;
}
.viz-elm .s.pg > .s.ar::after {
  content: '';
  display: table;
  clear: both;
}
.viz-elm .s.pg > .s.al {
  float: left;
}
.viz-elm .s.pg > .s.al::after {
  content: '';
  display: table;
  clear: both;
}
.viz-elm .s.iml {
  white-space: pre-wrap;
}
.viz-elm .s.p {
  display: block;
  white-space: normal;
}
.viz-elm .s.p.hbh {
  z-index: 0;
}
.viz-elm .s.p.hbh > .bh {
  z-index: -1;
}
.viz-elm .s.p > .t {
  display: inline;
  white-space: normal;
}
.viz-elm .s.p > .e {
  display: inline;
  white-space: normal;
}
.viz-elm .s.p > .e.fr {
  display: flex;
}
.viz-elm .s.p > .e.bh {
  display: flex;
}
.viz-elm .s.p > .e.a {
  display: flex;
}
.viz-elm .s.p > .e.b {
  display: flex;
}
.viz-elm .s.p > .e.or {
  display: flex;
}
.viz-elm .s.p > .e.ol {
  display: flex;
}
.viz-elm .s.p > .e > .t {
  display: inline;
  white-space: normal;
}
.viz-elm .s.p > .r {
  display: inline-flex;
}
.viz-elm .s.p > .c {
  display: inline-flex;
}
.viz-elm .s.p > .g {
  display: inline-grid;
}
.viz-elm .s.p > .s.ar {
  float: right;
}
.viz-elm .s.p > .s.al {
  float: left;
}
.viz-elm .s.hidden {
  display: none;
}
.viz-elm .s.w1 {
  font-weight: 100;
}
.viz-elm .s.w2 {
  font-weight: 200;
}
.viz-elm .s.w3 {
  font-weight: 300;
}
.viz-elm .s.w4 {
  font-weight: 400;
}
.viz-elm .s.w5 {
  font-weight: 500;
}
.viz-elm .s.w6 {
  font-weight: 600;
}
.viz-elm .s.w7 {
  font-weight: 700;
}
.viz-elm .s.w8 {
  font-weight: 800;
}
.viz-elm .s.w9 {
  font-weight: 900;
}
.viz-elm .s.i {
  font-style: italic;
}
.viz-elm .s.sk {
  text-decoration: line-through;
}
.viz-elm .s.u {
  text-decoration: underline;
  text-decoration-skip-ink: auto;
  text-decoration-skip: ink;
}
.viz-elm .s.u.sk {
  text-decoration: line-through underline;
  text-decoration-skip-ink: auto;
  text-decoration-skip: ink;
}
.viz-elm .s.tun {
  font-style: normal;
}
.viz-elm .s.tj {
  text-align: justify;
}
.viz-elm .s.tja {
  text-align: justify-all;
}
.viz-elm .s.tc {
  text-align: center;
}
.viz-elm .s.tr {
  text-align: right;
}
.viz-elm .s.tl {
  text-align: left;
}
.viz-elm .s.modal {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}
.viz-elm .border-0 {
  border-width: 0px;
}
.viz-elm .border-1 {
  border-width: 1px;
}
.viz-elm .border-2 {
  border-width: 2px;
}
.viz-elm .border-3 {
  border-width: 3px;
}
.viz-elm .border-4 {
  border-width: 4px;
}
.viz-elm .border-5 {
  border-width: 5px;
}
.viz-elm .border-6 {
  border-width: 6px;
}
.viz-elm .font-size-8 {
  font-size: 8px;
}
.viz-elm .font-size-9 {
  font-size: 9px;
}
.viz-elm .font-size-10 {
  font-size: 10px;
}
.viz-elm .font-size-11 {
  font-size: 11px;
}
.viz-elm .font-size-12 {
  font-size: 12px;
}
.viz-elm .font-size-13 {
  font-size: 13px;
}
.viz-elm .font-size-14 {
  font-size: 14px;
}
.viz-elm .font-size-15 {
  font-size: 15px;
}
.viz-elm .font-size-16 {
  font-size: 16px;
}
.viz-elm .font-size-17 {
  font-size: 17px;
}
.viz-elm .font-size-18 {
  font-size: 18px;
}
.viz-elm .font-size-19 {
  font-size: 19px;
}
.viz-elm .font-size-20 {
  font-size: 20px;
}
.viz-elm .font-size-21 {
  font-size: 21px;
}
.viz-elm .font-size-22 {
  font-size: 22px;
}
.viz-elm .font-size-23 {
  font-size: 23px;
}
.viz-elm .font-size-24 {
  font-size: 24px;
}
.viz-elm .font-size-25 {
  font-size: 25px;
}
.viz-elm .font-size-26 {
  font-size: 26px;
}
.viz-elm .font-size-27 {
  font-size: 27px;
}
.viz-elm .font-size-28 {
  font-size: 28px;
}
.viz-elm .font-size-29 {
  font-size: 29px;
}
.viz-elm .font-size-30 {
  font-size: 30px;
}
.viz-elm .font-size-31 {
  font-size: 31px;
}
.viz-elm .font-size-32 {
  font-size: 32px;
}
.viz-elm .p-0 {
  padding: 0px;
}
.viz-elm .p-1 {
  padding: 1px;
}
.viz-elm .p-2 {
  padding: 2px;
}
.viz-elm .p-3 {
  padding: 3px;
}
.viz-elm .p-4 {
  padding: 4px;
}
.viz-elm .p-5 {
  padding: 5px;
}
.viz-elm .p-6 {
  padding: 6px;
}
.viz-elm .p-7 {
  padding: 7px;
}
.viz-elm .p-8 {
  padding: 8px;
}
.viz-elm .p-9 {
  padding: 9px;
}
.viz-elm .p-10 {
  padding: 10px;
}
.viz-elm .p-11 {
  padding: 11px;
}
.viz-elm .p-12 {
  padding: 12px;
}
.viz-elm .p-13 {
  padding: 13px;
}
.viz-elm .p-14 {
  padding: 14px;
}
.viz-elm .p-15 {
  padding: 15px;
}
.viz-elm .p-16 {
  padding: 16px;
}
.viz-elm .p-17 {
  padding: 17px;
}
.viz-elm .p-18 {
  padding: 18px;
}
.viz-elm .p-19 {
  padding: 19px;
}
.viz-elm .p-20 {
  padding: 20px;
}
.viz-elm .p-21 {
  padding: 21px;
}
.viz-elm .p-22 {
  padding: 22px;
}
.viz-elm .p-23 {
  padding: 23px;
}
.viz-elm .p-24 {
  padding: 24px;
}
.viz-elm .v-smcp {
  font-variant: small-caps;
}
.viz-elm .v-smcp-off {
  font-variant: normal;
}
.viz-elm .v-zero {
  font-feature-settings: 'zero';
}
.viz-elm .v-zero-off {
  font-feature-settings: 'zero' 0;
}
.viz-elm .v-onum {
  font-feature-settings: 'onum';
}
.viz-elm .v-onum-off {
  font-feature-settings: 'onum' 0;
}
.viz-elm .v-liga {
  font-feature-settings: 'liga';
}
.viz-elm .v-liga-off {
  font-feature-settings: 'liga' 0;
}
.viz-elm .v-dlig {
  font-feature-settings: 'dlig';
}
.viz-elm .v-dlig-off {
  font-feature-settings: 'dlig' 0;
}
.viz-elm .v-ordn {
  font-feature-settings: 'ordn';
}
.viz-elm .v-ordn-off {
  font-feature-settings: 'ordn' 0;
}
.viz-elm .v-tnum {
  font-feature-settings: 'tnum';
}
.viz-elm .v-tnum-off {
  font-feature-settings: 'tnum' 0;
}
.viz-elm .v-afrc {
  font-feature-settings: 'afrc';
}
.viz-elm .v-afrc-off {
  font-feature-settings: 'afrc' 0;
}
.viz-elm .v-frac {
  font-feature-settings: 'frac';
}
.viz-elm .v-frac-off {
  font-feature-settings: 'frac' 0;
}
.viz-wrapper {
  position: relative;
  width: 100%;
  margin-bottom: 24px;
  /* This prevents this div from showing a gray rectangle on iOS when tapped. */
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
.viz-wrapper.left {
  float: left;
  margin-right: 24px;
}
.viz-wrapper.right {
  float: right;
  margin-left: 24px;
}
.viz-wrapper img {
  max-width: unset;
}
.viz-wrapper.left,
.viz-wrapper.right {
  width: auto;
  min-width: 400px;
}
@media screen and (min-width: 700px) and (max-width: 1200px) {
  .viz-wrapper.left,
  .viz-wrapper.right {
    float: left;
    width: 100%;
    margin-left: 0;
    margin-right: 0;
  }
}
.viz-wrapper .loading {
  display: flex;
  width: 100%;
  min-height: 200px;
  align-items: center;
  justify-content: center;
}
.viz-wrapper .admin-links {
  margin: 16px 0 0 0;
  font-size: 13px;
}
.viz-wrapper.stashed,
.interactive.stashed {
  position: absolute !important;
  top: -99999px;
  left: -99999px;
  padding: 0 40px;
}
@media screen and (min-width: 700px) and (max-width: 1200px) {
  .viz-wrapper.stashed,
  .interactive.stashed {
    padding: 0 24px;
  }
}
.stashed-fixed-width {
  width: 100px;
}
.viz-error {
  display: block;
  width: 276px;
  max-width: 100%;
  margin: 0 auto;
  padding: 24px;
  border: 1px solid #d4d4d4;
  line-height: 1.4em;
  background: #f7f7f7;
  border-radius: 4px;
}
.viz-error p {
  margin: 0;
  font-weight: bold;
}
.viz-error p + p {
  margin-top: 16px;
  font-weight: normal;
}
.viz-graph-loading {
  max-width: 500px;
  margin: 0 auto;
  color: #777;
  font-size: 16px;
  font-style: oblique;
  text-align: center;
  background: url(/site_media/version-beb5f1c5ff/images/bg-visualization-grid.png) center center repeat #f7f7f7;
  background-size: 36px;
}
.viz-graph-loading p {
  display: block;
  padding: 96px 0;
  margin: 0;
}
.visualization-debug-notif {
  position: relative;
  text-align: center;
  z-index: 299;
}
.visualization-debug-notif a {
  margin-left: 16px;
}
pre#console {
  height: 200px;
  overflow-y: scroll;
}
.neuralNetworksSlider input[type='range'] {
  -webkit-appearance: none;
  margin: 0;
  width: calc(100% - 30px / 2);
  padding: 5px;
  background-color: transparent;
  touch-action: none;
}
.neuralNetworksSlider input[type='range']:focus {
  outline: none;
}
.neuralNetworksSlider input[type='range']::-webkit-slider-runnable-track {
  width: calc(100% - 30px / 2);
  height: 5px;
  cursor: pointer;
  animate: 0.2s;
  box-shadow: 0 0 0 #222;
  background: #000;
  border-radius: 5px;
  border: 0 solid 0;
}
.neuralNetworksSlider input[type='range']::-webkit-slider-thumb {
  box-sizing: border-box;
  box-shadow: -2px 0 5px #111;
  border: 4px solid white;
  height: 30px;
  width: 30px;
  border-radius: 30px;
  background: #000;
  cursor: pointer;
  -webkit-appearance: none;
  margin-top: -12.5px;
}
.neuralNetworksSlider input[type='range']:focus::-webkit-slider-runnable-track {
  background: #0d0d0d;
}
.neuralNetworksSlider input[type='range']::-moz-range-track {
  width: calc(100% - 30px / 2);
  height: 5px;
  cursor: pointer;
  animate: 0.2s;
  box-shadow: 0 0 0 #222;
  background: #000;
  border-radius: 5px;
  border: 0 solid 0;
}
.neuralNetworksSlider input[type='range']::-moz-range-thumb {
  box-sizing: border-box;
  box-shadow: -2px 0 5px #111;
  border: 4px solid white;
  height: 30px;
  width: 30px;
  border-radius: 30px;
  background: #000;
  cursor: pointer;
}
.neuralNetworksSlider input[type='range']::-moz-focus-outer {
  border: 0;
}
.neuralNetworksSlider input[type='range']::-ms-track {
  width: calc(100% - 30px / 2);
  height: 5px;
  cursor: pointer;
  animate: 0.2s;
  background: transparent;
  border-color: transparent;
  border-width: 30px 0;
  color: transparent;
}
.neuralNetworksSlider input[type='range']::-ms-fill-lower {
  background: #000000;
  border: 0 solid 0;
  border-radius: 10px;
  box-shadow: 0 0 0 #222;
}
.neuralNetworksSlider input[type='range']::-ms-fill-upper {
  background: #000;
  border: 0 solid 0;
  border-radius: 10px;
  box-shadow: 0 0 0 #222;
}
.neuralNetworksSlider input[type='range']::-ms-thumb {
  box-sizing: border-box;
  box-shadow: -2px 0 5px #111;
  border: 4px solid white;
  height: 30px;
  width: 30px;
  border-radius: 30px;
  background: #000;
  cursor: pointer;
}
.neuralNetworksSlider input[type='range']:focus::-ms-fill-lower {
  background: #000;
}
.neuralNetworksSlider input[type='range']:focus::-ms-fill-upper {
  background: #0d0d0d;
}
.tooltip-container {
  position: absolute;
  background: #fff;
  display: flex;
  padding: 5px 8px;
  justify-content: center;
  align-items: center;
  white-space: nowrap;
  visibility: hidden;
  transition: opacity 100ms, transform 100ms, visibility 0s 100ms;
  transform-origin: center 42px;
  opacity: 0;
  left: 50%;
  -webkit-transform: translate(-50%, 30%) scale(0);
  transform: translate(-50%, 30%) scale(0);
  border: 1px solid #f0f0f0;
  border-radius: 4px;
  filter: drop-shadow(0px 2px 4px rgba(0, 0, 0, 0.25));
  bottom: calc(100% + 8px + 4px);
  /*And use this one for the shadow*/
}
.tooltip-container .tooltip-contents {
  width: max-content;
}
.tooltip-container:before,
.tooltip-container:after {
  content: '';
  position: absolute;
  left: 50%;
  width: 0;
  height: 0;
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
}
.tooltip-container:before {
  bottom: -7px;
  border-left: 5.5px solid transparent;
  border-right: 5.5px solid transparent;
  border-top: 8px solid #fff;
  z-index: 2;
}
.tooltip-container:after {
  bottom: -9px;
  border-left: 6.5px solid transparent;
  border-right: 6.5px solid transparent;
  border-top: 9px solid #f0f0f0;
  z-index: 1;
}
.tooltip-container .katex > .katex-html {
  margin: 0px;
}
/*! nouislider - 14.2.0 - 3/15/2022 */
/* Functional styling;
 * These styles are required for noUiSlider to function.
 * You don't need to change these rules to apply your design.
 */
.noUi-target,
.noUi-target * {
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-user-select: none;
  -ms-touch-action: none;
  touch-action: none;
  -ms-user-select: none;
  -moz-user-select: none;
  user-select: none;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.noUi-target {
  position: relative;
}
.noUi-base,
.noUi-connects {
  width: 100%;
  height: 100%;
  position: relative;
  z-index: 1;
}
/* Wrapper for all connect elements.
 */
.noUi-connects {
  overflow: hidden;
  z-index: 0;
}
.noUi-connect,
.noUi-origin {
  will-change: transform;
  position: absolute;
  z-index: 1;
  top: 0;
  right: 0;
  -ms-transform-origin: 0 0;
  -webkit-transform-origin: 0 0;
  -webkit-transform-style: preserve-3d;
  transform-origin: 0 0;
  transform-style: flat;
}
.noUi-connect {
  height: 100%;
  width: 100%;
}
.noUi-origin {
  height: 10%;
  width: 10%;
}
/* Offset direction
 */
.noUi-txt-dir-rtl.noUi-horizontal .noUi-origin {
  left: 0;
  right: auto;
}
/* Give origins 0 height/width so they don't interfere with clicking the
 * connect elements.
 */
.noUi-vertical .noUi-origin {
  width: 0;
}
.noUi-horizontal .noUi-origin {
  height: 0;
}
.noUi-handle {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  position: absolute;
}
.noUi-touch-area {
  height: 100%;
  width: 100%;
}
.noUi-state-tap .noUi-connect,
.noUi-state-tap .noUi-origin {
  -webkit-transition: transform 0.3s;
  transition: transform 0.3s;
}
.noUi-state-drag * {
  cursor: inherit !important;
}
/* Slider size and handle placement;
 */
.noUi-horizontal {
  height: 18px;
}
.noUi-horizontal .noUi-handle {
  width: 34px;
  height: 28px;
  right: -17px;
  top: -6px;
}
.noUi-vertical {
  width: 18px;
}
.noUi-vertical .noUi-handle {
  width: 28px;
  height: 34px;
  right: -6px;
  top: -17px;
}
.noUi-txt-dir-rtl.noUi-horizontal .noUi-handle {
  left: -17px;
  right: auto;
}
/* Styling;
 * Giving the connect element a border radius causes issues with using transform: scale
 */
.noUi-target {
  background: #FAFAFA;
  border-radius: 4px;
  border: 1px solid #D3D3D3;
  box-shadow: inset 0 1px 1px #F0F0F0, 0 3px 6px -5px #BBB;
}
.noUi-connects {
  border-radius: 3px;
}
.noUi-connect {
  background: #3FB8AF;
}
/* Handles and cursors;
 */
.noUi-draggable {
  cursor: ew-resize;
}
.noUi-vertical .noUi-draggable {
  cursor: ns-resize;
}
.noUi-handle {
  border: 1px solid #D9D9D9;
  border-radius: 3px;
  background: #FFF;
  cursor: default;
  box-shadow: inset 0 0 1px #FFF, inset 0 1px 7px #EBEBEB, 0 3px 6px -3px #BBB;
}
.noUi-active {
  box-shadow: inset 0 0 1px #FFF, inset 0 1px 7px #DDD, 0 3px 6px -3px #BBB;
}
/* Handle stripes;
 */
.noUi-handle:before,
.noUi-handle:after {
  content: "";
  display: block;
  position: absolute;
  height: 14px;
  width: 1px;
  background: #E8E7E6;
  left: 14px;
  top: 6px;
}
.noUi-handle:after {
  left: 17px;
}
.noUi-vertical .noUi-handle:before,
.noUi-vertical .noUi-handle:after {
  width: 14px;
  height: 1px;
  left: 6px;
  top: 14px;
}
.noUi-vertical .noUi-handle:after {
  top: 17px;
}
/* Disabled state;
 */
[disabled] .noUi-connect {
  background: #B8B8B8;
}
[disabled].noUi-target,
[disabled].noUi-handle,
[disabled] .noUi-handle {
  cursor: not-allowed;
}
/* Base;
 *
 */
.noUi-pips,
.noUi-pips * {
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.noUi-pips {
  position: absolute;
  color: #999;
}
/* Values;
 *
 */
.noUi-value {
  position: absolute;
  white-space: nowrap;
  text-align: center;
}
.noUi-value-sub {
  color: #ccc;
  font-size: 10px;
}
/* Markings;
 *
 */
.noUi-marker {
  position: absolute;
  background: #CCC;
}
.noUi-marker-sub {
  background: #AAA;
}
.noUi-marker-large {
  background: #AAA;
}
/* Horizontal layout;
 *
 */
.noUi-pips-horizontal {
  padding: 10px 0;
  height: 80px;
  top: 100%;
  left: 0;
  width: 100%;
}
.noUi-value-horizontal {
  -webkit-transform: translate(-50%, 50%);
  transform: translate(-50%, 50%);
}
.noUi-rtl .noUi-value-horizontal {
  -webkit-transform: translate(50%, 50%);
  transform: translate(50%, 50%);
}
.noUi-marker-horizontal.noUi-marker {
  margin-left: -1px;
  width: 2px;
  height: 5px;
}
.noUi-marker-horizontal.noUi-marker-sub {
  height: 10px;
}
.noUi-marker-horizontal.noUi-marker-large {
  height: 15px;
}
/* Vertical layout;
 *
 */
.noUi-pips-vertical {
  padding: 0 10px;
  height: 100%;
  top: 0;
  left: 100%;
}
.noUi-value-vertical {
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  padding-left: 25px;
}
.noUi-rtl .noUi-value-vertical {
  -webkit-transform: translate(0, 50%);
  transform: translate(0, 50%);
}
.noUi-marker-vertical.noUi-marker {
  width: 5px;
  height: 2px;
  margin-top: -1px;
}
.noUi-marker-vertical.noUi-marker-sub {
  width: 10px;
}
.noUi-marker-vertical.noUi-marker-large {
  width: 15px;
}
.noUi-tooltip {
  display: block;
  position: absolute;
  border: 1px solid #D9D9D9;
  border-radius: 3px;
  background: #fff;
  color: #000;
  padding: 5px;
  text-align: center;
  white-space: nowrap;
}
.noUi-horizontal .noUi-tooltip {
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  left: 50%;
  bottom: 120%;
}
.noUi-vertical .noUi-tooltip {
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  top: 50%;
  right: 120%;
}
.noUi-horizontal {
  height: 10px;
}
.noUi-horizontal .noUi-base .noUi-origin .noUi-handle {
  top: -13px;
  left: calc(100% - 15px);
  width: 30px;
  height: 30px;
}
.noUi-target {
  height: 4px;
  margin: 16px 16px 24px 16px;
  border: none;
  border-radius: 4px;
  box-shadow: none;
  pointer-events: none;
}
.noUi-target.has-scale {
  margin-bottom: 32px;
}
.noUi-handle {
  border: 4px solid white;
  border-radius: 50%;
  box-shadow: -1px 4px 8px rgba(0, 0, 0, 0.3), 0 0 8px rgba(0, 0, 0, 0.3);
  outline: none;
}
.noUi-handle:before,
.noUi-handle:after {
  display: none;
}
.noUi-touch-area {
  pointer-events: auto;
  width: 200%;
  height: 200%;
  top: -50%;
  left: -50%;
  position: absolute;
}
.noUi-pips-horizontal {
  width: auto;
  height: 35px;
  right: -1px;
  padding-top: 6px;
  padding-bottom: 0;
}
.noUi-marker {
  background: #161616;
}
.noUi-marker-horizontal.noUi-marker {
  width: 1px;
  height: 4px;
}
.noUi-marker-horizontal.noUi-marker-large {
  height: 8px;
}
.noUi-value {
  font-size: 13px;
  color: #161616;
  line-height: 1.2em;
  padding-top: 4px;
}
.noUi-state-tap .noUi-origin {
  transition: none;
}
.noUi-handle.noUi-active > .tooltip-container {
  visibility: visible;
  opacity: 1;
  transform: translate(-50%, 0) scale(1);
  /* Transition in */
  transition: visibility 0s, opacity 100ms, transform 100ms;
}
.tooltip-variable-name {
  position: static;
  padding: 0;
  margin: 0;
  font-size: 13px;
}
.tooltip-variable-value {
  font-size: 13px;
}
.viz-anim-toggle {
  position: relative;
  display: block;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  border: none;
  background: #919191;
  cursor: pointer;
  outline: none;
  z-index: 1;
}
.viz-anim-toggle:hover {
  border-color: #777;
}
.viz-anim-toggle.active:before {
  width: 3px;
  height: 12px;
  /* The pause icon is approximately 2/5, 1/5, 2/5 */
  border: 4px solid #fff;
  border-width: 0 4px;
  left: 50%;
  top: 50%;
}
.viz-anim-toggle:before {
  content: '';
  position: absolute;
  display: block;
  top: 50%;
  left: calc(50% + 1px);
  width: 0;
  height: 0;
  border-top: 6px solid transparent;
  border-bottom: 6px solid transparent;
  border-left: 10px solid transparent;
  border-right: 0;
  border-left-color: #fff;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.viz-clearfix {
  *zoom: 1;
}
.viz-clearfix:before,
.viz-clearfix:after {
  display: table;
  content: '';
}
.viz-clearfix:after {
  clear: both;
}
.viz-wrapper {
  font-family: 'Soleil', Arial, sans-serif;
  font-size: 16px;
}
.viz-wrapper text {
  stroke-width: 0;
}
.viz-content {
  margin: 0 auto;
}
.viz-svg-root {
  margin-bottom: 10px;
}
.viz-axis path,
.viz-axis line {
  stroke: #aaa;
  shape-rendering: crispEdges;
}
.viz-axis text {
  font-family: 'Soleil', Arial, sans-serif;
  font-size: 11px;
  fill: #aaa;
  stroke: transparent;
}
.viz-grid {
  stroke: #eee;
  stroke-width: 1px;
  fill: none;
}
.viz-graph {
  stroke: #333;
  stroke-width: 2px;
  fill: none;
}
.viz-graph.dashed {
  stroke-dasharray: 8, 2;
}
.viz-graph-inequality {
  fill: #333;
  stroke-width: 0;
  opacity: 0.5;
  mix-blend-mode: multiply;
}
.viz-graph-controls {
  width: 100%;
}
.viz-label {
  font-family: 'Soleil', Arial, sans-serif;
  font-size: 14px;
  fill: #aaa;
  stroke-width: 0;
}
.viz-point {
  fill: #333;
  stroke: #fff;
}
.viz-line {
  stroke: #333;
}
.viz-slider-wrapper {
  position: relative;
  display: grid;
  grid-template-columns: [variable-start] minmax(0, auto) [variable-end slider-start] 1fr [slider-end play-button-start] minmax(0, auto) [play-button-end];
  align-items: baseline;
}
.viz-slider-wrapper + .viz-slider-wrapper {
  margin-top: 8px;
}
.viz-slider-label {
  grid-column: variable;
  min-width: 18px;
}
.viz-expression-wrapper {
  margin-bottom: 8px;
  border-bottom: 1px solid #eee;
}
.viz-expression-toggle-wrapper {
  display: grid;
  grid-template-columns: 24px 1fr 24px;
  grid-column-gap: 8px;
  align-items: center;
  padding-bottom: 6px;
}
.viz-expression-toggle-wrapper.active .static {
  opacity: 0;
}
.viz-expression-toggle-wrapper.active .dynamic {
  opacity: 1;
}
.viz-expression-toggle-wrapper.active .viz-expression-toggle {
  background: #eee;
}
.viz-expression-toggle-wrapper .viz-expression {
  grid-row: 1;
  grid-column: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 4px 0;
}
.viz-expression-toggle-wrapper .dynamic {
  opacity: 0;
}
.viz-expression-toggle-wrapper .viz-expression-toggle {
  grid-row: 1;
  grid-column: 3;
}
.viz-slider-wrapper + .viz-expression-toggle-wrapper {
  margin-top: 16px;
}
.viz-expression-toggle {
  position: relative;
  display: flex;
  width: 24px;
  height: 24px;
  border: 1px solid #eee;
  border-radius: 4px;
  justify-content: center;
  align-items: center;
  background: #fff;
  cursor: pointer;
}
.viz-expression-toggle:hover {
  border-color: #d5d5d5;
}
.viz-expression-toggle:hover .tooltip-container {
  visibility: visible;
  opacity: 1;
  transform: translate(-50%, 0) scale(1);
  /* Transition in */
  transition: visibility 0s, opacity 100ms, transform 100ms;
}
.viz-expression-toggle .tooltip-container {
  padding: 8px 10px;
  font-size: 12px;
  line-height: 1em;
  color: #333;
}
.viz-expression-toggle .icon {
  display: inline-block;
  width: 15px;
  height: 12px;
  background-position: top left;
  background-repeat: no-repeat;
  background-size: 15px 12px;
}
.viz-expression {
  font-family: 'Soleil', Arial, sans-serif;
  font-size: 16px;
  padding-bottom: 10px;
  text-align: center;
}
.viz-expression .math > span {
  font-size: 18px !important;
}
.viz-rendering {
  display: flex;
  align-items: center;
  justify-content: center;
}
.viz-rendering .math-content {
  position: relative;
  display: inline-block;
  overflow: hidden;
}
.viz-rendering .math-content:before,
.viz-rendering .math-content:after {
  content: '';
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}
.viz-rendering .math-content:before {
  background: #fbfbfb;
}
.viz-rendering .math-content:after {
  background: linear-gradient(to right, rgba(244, 244, 244, 0) 10%, #f4f4f4 50%, rgba(244, 244, 244, 0) 90%);
  background-repeat: no-repeat;
  -webkit-animation: vizrendering 3s infinite linear forwards;
  -moz-animation: vizrendering 3s infinite linear forwards;
  animation: vizrendering 3s infinite linear forwards;
}
.viz-rendering.viz-slider-label {
  width: 18px;
  height: 24px;
}
@-webkit-keyframes vizrendering {
  0% {
    left: -100%;
  }
  50% {
    left: 100%;
  }
  100% {
    left: 100%;
  }
}
@-moz-keyframes vizrendering {
  0% {
    left: -100%;
  }
  50% {
    left: 100%;
  }
  100% {
    left: 100%;
  }
}
@keyframes vizrendering {
  0% {
    left: -100%;
  }
  50% {
    left: 100%;
  }
  100% {
    left: 100%;
  }
}
.viz-rendered .math-content {
  visibility: visible;
}
ul.viz-graph-legend {
  float: left;
  clear: left;
  width: 100%;
  margin: 0 0 8px 0;
  padding: 0;
  list-style: none;
  text-align: center;
}
ul.viz-graph-legend li {
  display: inline-block;
  margin: 0 8px;
  color: #777;
  font-size: 14px;
}
ul.viz-graph-legend span {
  display: inline-block;
  width: 10px;
  height: 10px;
  margin-right: 1px;
  border-radius: 50%;
  background-color: #777;
}
.noUi-target {
  grid-column: slider;
}
.viz-anim-toggle-main {
  float: left;
  margin: -50px 0 0 8px;
}
.viz-anim-toggle-var {
  grid-column: play-button;
  transform: translate(0, -2px);
}
.viz-graph-bar-item {
  fill: #333;
  stroke-width: 0;
}
.viz-graph-bar-text {
  font-family: 'Soleil', Arial, sans-serif;
  font-size: 11px;
  fill: #aaa;
  stroke-width: 0;
}
.viz-vectorField {
  font-family: 'Soleil', Arial, sans-serif;
  font-size: 16px;
  padding-bottom: 10px;
  text-align: center;
}
div.toggle-container {
  min-width: fit-content;
  height: 32px;
  display: flex;
  flex-basis: 0;
  align-items: baseline;
  padding: 0 10px;
  margin: 0 8px 8px 0;
  border: 2px solid #f0f0f0;
  border-radius: 4px;
  cursor: pointer;
  user-select: none;
  font-size: 13px;
  white-space: nowrap;
  /* this lets me specify the baseline we want to align to */
}
div.toggle-container.selected {
  background: #f0f0f0;
}
div.toggle-container.notselected {
  background: #fff;
}
div.toggle-container .viz-rendering .math-content::before {
  background: #f0f0f0;
}
div.toggle-container ::after {
  content: '';
  display: inline-block;
  height: calc(100% - 10px);
}
div.toggle-container :hover {
  opacity: 0.5;
}
div.toggle-grid {
  display: flex;
  flex-wrap: wrap;
}
.viz-canvas-wrapper {
  position: relative;
  margin: 0 auto;
}
.viz-canvas-wrapper canvas {
  margin-bottom: 16px;
  z-index: 1;
}
.viz-canvas-wrapper text {
  stroke-width: 0;
}
.viz-canvas-wrapper h4 {
  margin: 0;
}
.viz-canvas-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
.viz-wrapper .caption {
  visibility: hidden;
}
.viz-canvas-latex-element {
  display: none;
}
.viz-canvas-slider-group {
  display: flex;
  position: relative;
  width: 100%;
  padding: 6px 0;
  margin-bottom: 16px;
}
.viz-canvas-slider-group.with-button {
  padding-right: 50px;
}
.viz-canvas-slider-group > span {
  display: table-cell;
}
.viz-canvas-slider-group .slider-wrapper {
  flex-grow: 1;
  padding: 4px 16px 0 16px;
}
.viz-canvas-slider-group .slider-wrapper .noUi-target {
  margin: 0;
}
.viz-canvas-slider-group .viz-anim-toggle {
  position: absolute;
  top: 50%;
  right: 0;
  margin-top: -17px;
}
.courses-item {
  position: relative;
  display: block;
  width: 100%;
  height: 240px;
  margin-bottom: 8px;
  padding: 8px;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.25);
  border-radius: 10px;
  color: #fff;
}
.courses-item.with-form {
  cursor: pointer;
}
.courses-item.with-form:hover .banner {
  background: rgba(255, 255, 255, 0.9);
}
.courses-item.with-form .banner {
  display: flex;
}
.courses-item.with-form .banner.notified {
  display: none;
}
.courses-item .banner {
  display: none;
}
.courses-item .banner.notified {
  display: flex;
}
.courses-item h3 {
  position: relative;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.25em;
  z-index: 1;
}
.courses-item p {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 8px;
  margin: 0;
  line-height: 1.25em;
  font-size: 12px;
  z-index: 1;
}
.courses-item .img {
  position: absolute;
  top: 64px;
  right: 16px;
  bottom: 72px;
  left: 16px;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  z-index: 0;
}
a.courses-item {
  opacity: 1;
  -webkit-transition: opacity 100ms linear;
  transition: opacity 100ms linear;
}
a.courses-item:hover {
  opacity: 0.88;
  color: #fff;
}
.coming-soon-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  z-index: 3;
}
.quiz-gallery-card {
  position: relative;
  width: 192px;
  height: 282px;
  border-radius: 10px;
  text-align: center;
  background: #fff;
  box-shadow: 0 2px 2px rgba(0, 0, 0, 0.25);
}
.quiz-gallery-card.intro .content {
  padding: 40px 8px;
}
.quiz-gallery-card.intro h2,
.quiz-gallery-card.intro h3,
.quiz-gallery-card.intro h4 {
  display: block;
  top: auto;
  bottom: 77px;
  left: 0;
}
.quiz-gallery-card.intro .img {
  width: 130px;
  height: 130px;
  margin-top: -8px;
}
.quiz-gallery-card.disabled,
.quiz-gallery-card.muted {
  opacity: 0.5;
  cursor: default;
}
.quiz-gallery-card .disabled:before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: url('/site_media/version-1/images/pixel.gif');
  z-index: 900;
  cursor: default;
}
body.no-touch .quiz-gallery-card:hover .staff-info {
  display: block;
}
.quiz-gallery-card .content {
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 24px 8px 16px 8px;
}
.quiz-gallery-card .lock {
  position: absolute;
  top: 8px;
  left: 8px;
  background-position: -319.5px -233px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 13px;
  height: 16px;
}
.quiz-gallery-card .img {
  display: inline-block;
  width: 100px;
  height: 100px;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  border-radius: 4px;
}
.quiz-gallery-card .img.no-image {
  background: #d8d8d8;
}
.quiz-gallery-card h2,
.quiz-gallery-card h3,
.quiz-gallery-card h4 {
  display: flex;
  position: absolute;
  top: 140px;
  bottom: 64px;
  left: 0;
  width: 100%;
  margin: 0;
  padding: 0 8px;
  align-items: center;
  color: #333;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.3em;
}
.quiz-gallery-card h2 span,
.quiz-gallery-card h3 span,
.quiz-gallery-card h4 span {
  display: block;
  width: 100%;
  text-align: center;
}
.quiz-gallery-card .check {
  position: absolute;
  bottom: 16px;
  left: 50%;
  margin-left: -20.5px;
  background-position: -217px -199px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: inline-block;
  width: 32px;
  height: 32px;
}
.quiz-gallery-card .quiz-progress {
  flex: none;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: auto;
}
.quiz-gallery-card .quiz-progress.unstarted,
.quiz-gallery-card .quiz-progress.started {
  width: 32px;
  height: 32px;
  border-radius: 50%;
}
.quiz-gallery-card .quiz-progress.unstarted {
  border: 2px dotted #c2c4cf;
}
.quiz-gallery-card .quiz-progress.started {
  border: 2px dotted #005ffa;
  color: #005ffa;
}
.quiz-gallery-card .staff-info {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  padding: 8px;
  border-bottom: 1px solid #d4d4d4;
  font-size: 11px;
  line-height: 1.3em;
  color: #777;
  background: rgba(255, 255, 255, 0.9);
  text-align: left;
  border-radius: 10px 10px 0 0;
}
.quiz-gallery-card .staff-info .admin-links {
  display: block;
  padding-bottom: 8px;
}
.quiz-gallery-card .staff-info .admin-links a {
  margin-right: 8px;
}
.quiz-gallery-card .staff-info p {
  margin: 0;
}
.quiz-gallery-card .staff-info form {
  margin: 0;
}
.quiz-gallery-card .staff-info label {
  margin: 8px 0 0;
  color: #333;
  font-size: 11px;
}
.quiz-gallery-card .staff-info input {
  margin: 0;
  font-size: 11px;
  line-height: 1.2em;
}
.quiz-gallery-card .staff-info input[type='file'] {
  margin-top: 4px;
}
.quiz-gallery-card .staff-info label[for='image-clear_id'] {
  display: inline;
  color: #777;
}
.quiz-gallery-card .staff-info .btn {
  padding: 2px 16px;
  font-size: 11px;
}
@media screen and (min-width: 700px) and (max-width: 1200px) {
  .quiz-gallery-card {
    width: 153.6px;
    padding: 16px 8px;
  }
}
.quiz-gallery-card.hoverable {
  border: 1px solid #fff;
  -webkit-transition: border-color 100ms linear;
  transition: border-color 100ms linear;
}
.quiz-gallery-card.hoverable:not(.disabled):hover {
  border-color: #ffde5c;
  box-shadow: 0 3px 5px rgba(0, 0, 0, 0.25);
}
.quiz-gallery-card.hoverable.disabled {
  cursor: default;
}
.quiz-gallery-card.hoverable.muted:hover {
  border-color: #bbb;
}
.quiz-gallery-card.hoverable.highlighted {
  border: 1px solid #ffde5c;
}
.quiz-gallery-card.hoverable.highlighted:hover {
  border-color: #e5b100;
}
.css-sprite-discussions {
  background-image: url(/site_media/sprite-e3f611dbb53/build/sprites/css-sprite-discussions.png);
}
@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx) {
  .css-sprite-discussions {
    background-image: url(/site_media/sprite-e3f611dbb53/build/sprites/css-sprite-discussions-x2.png);
    background-size: 56px 50px;
  }
}
.css-sprite-newsfeed {
  background-image: url(/site_media/sprite-fe4b20a0e23/build/sprites/css-sprite-newsfeed.png);
}
@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx) {
  .css-sprite-newsfeed {
    background-image: url(/site_media/sprite-fe4b20a0e23/build/sprites/css-sprite-newsfeed-x2.png);
    background-size: 141px 118px;
  }
}
.cmmnt {
  position: relative;
  padding: 16px 176px 16px 0;
  border-top: 1px solid #d4d4d4;
  font-size: 14px;
  z-index: 1;
  -webkit-transition: background 1000ms linear;
  transition: background 1000ms linear;
}
.cmmnt.highlight .comment-content:after {
  opacity: 0.25;
}
.cmmnt .avatar {
  float: left;
}
.cmmnt .avatar img {
  width: 30px;
  height: 30px;
  border-radius: 50%;
}
.cmmnt .staff,
.cmmnt .saved {
  margin-left: 5px;
  margin-right: 2px;
}
.cmmnt .staff {
  margin-left: 2px;
  padding: 1px 3px;
  border: 1px solid #777;
  color: #777;
  text-transform: uppercase;
  font-size: 9px;
  vertical-align: 2px;
}
.cmmnt .saved {
  color: #e5b100;
}
.cmmnt .deleted {
  color: #919191;
}
.cmmnt .deleted > * {
  position: relative;
  z-index: 1;
}
.cmmnt .deleted .admin_link {
  float: right;
  font-size: 14px;
  color: #e91e63;
}
.cmmnt .newpost-subscr a:hover {
  opacity: 1;
}
.cmmnt .modified {
  display: block;
  margin-top: 16px;
  font-size: 14px;
  color: #919191;
  font-family: 'Soleil', Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.cmmnt .invalid {
  color: #e5b100;
}
.cmmnt .invalid .helpful {
  margin: 0 0 -2px 2px;
  background-position: -64px -86.5px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: inline-block;
  width: 14px;
  height: 14px;
}
.discsol-comments-wrapper .cmmnt {
  padding-right: 0;
}
.comment-vote-wrapper {
  position: absolute;
  top: 16px;
  right: 0;
  width: 152px;
  box-shadow: none;
}
.comment-vote-wrapper > .btn {
  width: 50%;
  padding: 7px 0;
  margin: 0;
  border: 0;
  background: #f0f0f0;
  line-height: 1.4em;
  font-size: 14px;
}
.comment-vote-wrapper > .btn:first-child {
  border-right: 1px solid #fff;
}
.comment-vote-wrapper > .btn:last-child {
  border-left: 1px solid #fff;
}
.comment-vote-wrapper > .btn:hover {
  color: #777;
  background: #e3e3e3;
}
.comment-vote.voted {
  color: #fff;
  background: #919191;
}
.comment-vote.voted:hover {
  color: #fff;
  background: #848484;
}
.comment-vote.disabled em,
.comment-vote.disabled span {
  opacity: 0.5;
}
.comment-vote.vote-up.voted em {
  background-position: -10px -39px;
}
.comment-vote.vote-up em {
  vertical-align: 0;
  background-position: -20px -39px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: inline-block;
  width: 8px;
  height: 11px;
}
.comment-vote.vote-down.voted em {
  background-position: -41px -17.5px;
}
.comment-vote.vote-down em {
  vertical-align: -1px;
  background-position: 0px -39px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: inline-block;
  width: 8px;
  height: 11px;
}
.comment-vote em {
  margin-right: 8px;
}
.btn.show-replies,
.btn.comment-reply {
  width: 128px;
  padding-top: 2px;
  padding-bottom: 2px;
}
.show-replies,
.hide-replies {
  margin-right: 12px;
}
.hide-replies {
  white-space: nowrap;
  display: none;
}
.cmmnt.expanded .show-replies {
  display: none;
}
.cmmnt.expanded .hide-replies {
  display: inline-block;
}
.hide-replies {
  color: #777;
}
.hide-replies:hover {
  color: #0277bd;
}
.comment-reply {
  margin-right: 8px;
}
.comment-reply.hide {
  display: none;
}
.solution-edit-link,
.comment-menu {
  display: inline-block;
  width: auto;
}
.solution-edit-link.hide,
.comment-menu.hide {
  display: none;
}
.solution-edit-link .dropdown-toggle,
.comment-menu .dropdown-toggle {
  width: auto;
  padding: 0;
  border: 0;
}
.solution-edit-link .dropdown-menu,
.comment-menu .dropdown-menu {
  right: auto;
  min-width: 75px;
  width: auto;
  padding: 0;
}
.solution-edit-link .admin-link,
.comment-menu .admin-link {
  color: #e91e63;
}
.solution-edit-link .admin-link:hover,
.comment-menu .admin-link:hover {
  color: #930e3b;
}
.solution-edit-link form,
.comment-menu form {
  margin-bottom: 0;
}
.comment-menu {
  vertical-align: middle;
}
.comment-menu .dropdown-toggle {
  font-size: 24px;
  letter-spacing: -1px;
}
.cmmnt:not(.editing) .hide-on-edit {
  display: inline-block;
}
.cmmnt:not(.editing) .show-on-edit {
  display: none;
}
.cmmnt.editing {
  z-index: 0;
}
.cmmnt.editing .hide-on-edit,
.cmmnt.editing .hide-on-edit.hide-on-delete {
  display: none;
}
.cmmnt.editing .show-on-edit {
  display: block;
}
.cmmnt:not(.deleting) .hide-on-delete {
  display: block;
}
.cmmnt:not(.deleting) .show-on-delete {
  display: none;
}
.cmmnt.deleting .hide-on-delete,
.cmmnt.deleting .hide-on-edit.hide-on-delete {
  display: none;
}
.cmmnt.deleting .show-on-delete {
  display: block;
}
.comment-content {
  position: relative;
}
.comment-content:after {
  content: '';
  display: block;
  position: absolute;
  top: -8px;
  left: -8px;
  right: -16px;
  width: 100%;
  height: 100%;
  padding: 8px 16px 8px 8px;
  background: #ffc500;
  z-index: 0;
  opacity: 0;
  box-sizing: content-box;
  -webkit-transition: opacity 1s linear;
  transition: opacity 1s linear;
}
.comment-content .hide-on-edit,
.comment-content .show-on-edit,
.comment-content .show-on-delete {
  position: relative;
  z-index: 1;
}
.comment-content .text p {
  line-height: 1.4em;
  overflow-x: auto;
  overflow-y: hidden;
}
.comment-content .text p:last-child {
  margin: 0;
}
.comment-content .text ul p,
.comment-content .text ol p {
  overflow: visible;
}
.comment-content .meta {
  padding-bottom: 8px;
}
.comment-content .meta .author {
  color: #777;
}
.comment-content .meta .author:hover {
  color: #0277bd;
}
.comment-content .meta .ts {
  color: #d8d8d8;
}
.comment-content .text-preview {
  padding: 0 0 10px 0;
}
.comment-content .text-preview p {
  line-height: 1.4em;
}
.comment-content blockquote p {
  margin-bottom: 10px;
}
.comment-content .comment-profile,
.comment-content .mini-profile {
  position: relative;
  z-index: 1;
}
.comment-content .comment-text-wrapper {
  z-index: 2;
}
/* these ones contain meta information and edit popups */
.disc-comments .comment-content .text p:last-child {
  overflow: visible;
}
.comment-form {
  position: relative;
  margin: 0;
  padding-right: 92px;
}
.comment-form.focused .comment-form-buttons {
  opacity: 1;
}
.comment-form .editor p {
  margin: 0;
}
.comment-form .editor label {
  display: none;
}
.comment-form .editor textarea {
  width: 100%;
  height: 38px;
  min-height: 38px;
  padding: 6px 16px;
  margin: 0;
  resize: vertical;
}
.comment-form .editor .control-group {
  margin: 0;
}
.comment-form .errorlist {
  margin-top: 4px;
}
.comment-form:not(.previewing) .text-preview {
  display: none;
}
.comment-form:not(.previewing) .editor,
.comment-form:not(.previewing) .formatting-guide,
.comment-form:not(.previewing) .solution-img-uploader {
  display: block;
}
.comment-form:not(.previewing) .comment-form-buttons .edit,
.comment-form:not(.previewing) .comment-form-buttons .hide-on-edit {
  display: none;
}
.comment-form.previewing .text-preview {
  display: block;
}
.comment-form.previewing .editor,
.comment-form.previewing .wiki-field,
.comment-form.previewing .formatting-guide {
  display: none;
}
.comment-form.previewing .comment-form-buttons .edit {
  display: inline-block;
}
.comment-form.previewing .comment-form-buttons .preview {
  display: none;
}
.top-level-comment-form {
  padding: 16px 0 0 64px;
  border-top: 0;
}
.top-level-comment-form .comment-form {
  padding-bottom: 16px;
}
.top-level-comment-form .comment-form.focused textarea {
  width: 100%;
}
.top-level-comment-form .comment-form textarea {
  width: 276px;
}
.top-level-comment-form .comment-form .cancel-edit-trigger {
  display: none;
}
.comment-delete-form {
  padding: 16px;
  border: 1px solid #e91e63;
  font-family: 'Soleil', Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.comment-delete-form form {
  margin: 0;
}
.comment-delete-form .btn {
  margin-right: 16px;
  font-size: 13px;
}
.comment-delete-form .btn-link {
  font-size: 13px;
}
.cmmnt-container {
  padding-left: 64px;
}
.cmmnt-container.level-1 .cmmnt {
  padding-right: 0;
}
.cmmnt-container.level-X {
  padding-left: 0;
}
.cmmnt-container .cmmnt-container {
  padding-left: 48px;
}
.cmmnt-container .cmmnt-container .cmmnt {
  padding-top: 16px;
  padding-bottom: 16px;
}
.cmmnt-container .cmmnt-container .cmmnt .reply-form-wrapper {
  border-bottom: 1px solid #d8d8d8;
}
.cmmnt-container .cmmnt-container .cmmnt .editor {
  margin: 0;
}
.cmmnt-container .cmmnt-container .cmmnt-container {
  border: 0;
}
.comment-form-buttons {
  position: absolute;
  top: 0;
  right: 0;
  opacity: 0;
  -webkit-transition: opacity 200ms linear;
  transition: opacity 200ms linear;
}
.comment-form-buttons .btn {
  margin-bottom: 4px;
}
.comment-form-buttons .cancel-edit-trigger {
  display: block;
  text-align: center;
}
.formatting-guide-condensed {
  padding: 20px 0 0 0;
}
.formatting-guide-condensed table.table {
  width: 100%;
  border-collapse: inherit;
  word-break: break-word;
}
.formatting-guide-condensed p,
.formatting-guide-condensed li {
  line-height: 1.7em;
}
.formatting-guide-condensed li {
  padding: 4px 0;
}
.formatting-guide-condensed .emoji {
  padding: 0 0 0 2px;
}
.formatting-guide-condensed .emoji:before {
  margin-right: 0;
}
.reply-form-wrapper {
  display: none;
  padding: 0;
}
.reply-form-wrapper.replying {
  display: block;
}
.reply-form-wrapper.replying .comment-form-buttons {
  opacity: 1;
}
.comments-locked {
  padding: 16px 0 0 48px;
}
.comments-locked h3 {
  margin: 0;
  padding-bottom: 16px;
  border-bottom: 1px solid #d4d4d4;
  color: #bbb;
}
.css-sprite-formatting {
  background-image: url(/site_media/sprite-b3f388f89c3/build/sprites/css-sprite-formatting.png);
}
@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx) {
  .css-sprite-formatting {
    background-image: url(/site_media/sprite-b3f388f89c3/build/sprites/css-sprite-formatting-x2.png);
    background-size: 86px 86px;
  }
}
body.solv-signed-up-active:before {
  content: '';
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.75);
  z-index: 900;
}
body.solv-signed-up-active .solv-main {
  position: relative;
  border: 0;
  z-index: 901;
}
body.solv-signed-up-active .solv-main .quiz-solvable .actions-container,
body.solv-signed-up-active .solv-main .solv-details-footer,
body.solv-signed-up-active .solv-main .solv-footer {
  display: none;
}
body.solv-signed-up-active .solv-main .quiz-map:before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: url('/site_media/version-1/images/pixel.gif');
  z-index: 900;
  cursor: default;
}
body.solv-signed-up-active .solv-main .quiz-map ul {
  opacity: 0.3;
}
body.solv-signed-up-active.potw .prac-solvable .header {
  margin-top: 24px;
}
body.solv-signed-up-active .potw-quiz .prac-container-inner {
  width: 100%;
}
body.solv-signed-up-active .potw-quiz .potw-header:before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: url('/site_media/version-1/images/pixel.gif');
  z-index: 900;
  cursor: default;
}
body.solv-signed-up-active .potw-quiz .potw-header .dropdown,
body.solv-signed-up-active .potw-quiz .potw-header .btn-group {
  opacity: 0.4;
}
.solv-signed-up {
  margin: 24px 0 16px;
  padding: 16px;
  border: 1px solid #d4d4d4;
  border-radius: 10px;
  background: #f7f7f7;
}
.solv-signed-up h2 {
  font-size: 28px;
  font-weight: bold;
}
.solv-signed-up p {
  font-size: 16px;
  font-weight: bold;
  line-height: 1.3em;
  color: #333;
}
.solv-signed-up p br {
  display: none;
}
.solv-signed-up .emoji-heart {
  text-indent: -9999px;
  margin: -4px;
  vertical-align: -2px;
  background-position: -213px -157px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: inline-block;
  width: 24px;
  height: 23.5px;
  -webkit-transform: scale(0.7);
  transform: scale(0.7);
}
.solv-signed-up .btn {
  width: 100%;
  padding: 12px 0;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.3em;
}
.solv-signed-up .emoji-rocket {
  margin: -5px 0 -5px 2px;
  vertical-align: -4px;
  background-position: -156px -157px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: inline-block;
  width: 27px;
  height: 26.5px;
}
@media screen and (min-width: 700px) and (max-width: 1200px) {
  .solv-signed-up .emoji-rocket {
    display: none;
  }
}
body.mobile.solv-signed-up-active .solv-main {
  z-index: 300;
}
body.mobile .solv-signed-up {
  position: fixed;
  top: 100px;
  left: 50%;
  width: 276px;
  margin-left: -138px;
  z-index: 901;
}
.question-text.editable.editing {
  font-size: 13px;
  font-family: 'Soleil', Arial, sans-serif;
}
.question-text.editable.editing textarea {
  margin-bottom: 16px;
}
.question-text.editable.editing .edit-buttons {
  display: block;
  position: relative;
  z-index: 1;
}
.question-text.editable.editing .field,
.question-text.editable.editing .nf-editor-optional,
.question-text.editable.editing .solution-field {
  display: block;
}
.question-text.editable.editing .field ul,
.question-text.editable.editing .nf-editor-optional ul,
.question-text.editable.editing .solution-field ul {
  width: 100%;
}
.question-text.editable.editing .field li,
.question-text.editable.editing .nf-editor-optional li,
.question-text.editable.editing .solution-field li {
  margin-bottom: 0;
}
.question-text.editable.editing .btn-preview {
  display: inline;
}
.question-text.editable.editing .display-text,
.question-text.editable.editing .solution-preview,
.question-text.editable.editing .hide,
.question-text.editable.editing .btn-edit,
.question-text.editable.editing .show-solution {
  display: none;
}
.question-text.editable.previewing .preview-buttons {
  display: block;
}
.question-text.editable form {
  margin: 0;
}
.question-text.editable .edit-buttons,
.question-text.editable .preview-buttons {
  display: none;
}
.question-text.editable .btn-edit {
  margin-bottom: 16px;
}
.question-text.editable .display-text {
  float: left;
  clear: left;
  width: 100%;
  padding: 0;
  margin: 0;
}
.question-text.editable .display-text.preview {
  margin-top: 16px;
}
.question-text.editable .display-text h1,
.question-text.editable .display-text h2,
.question-text.editable .display-text h3,
.question-text.editable .display-text h4,
.question-text.editable .display-text h5,
.question-text.editable .display-text h6 {
  font-style: oblique;
}
.question-text.editable .qq-upload-button {
  width: auto;
}
.question-text.editable .qq-upload-drop-area {
  padding: 5px 0;
}
.question-text.editable .field {
  display: none;
  width: 100%;
}
.question-text.editable textarea {
  padding: 9px;
}
.question-text.editable .field input {
  width: 100%;
}
.question-text.editable .solution-field {
  display: none;
}
.question-text.editable .nf-editor-optional {
  display: none;
  float: left;
  width: 276px;
  max-width: 100%;
}
.question-text.editable .btn-preview {
  display: none;
}
.question-text.editable .cancel-edit {
  float: right;
}
.question-text.editable .errorlist {
  margin: -16px 0 16px 0;
}
.question-text.editable.has-text-formatting-bar.editing .text-formatting-bar {
  display: -webkit-box;
  display: flex;
}
.question-text.editable.has-text-formatting-bar.editing .asset-mgmt-wrapper {
  display: block;
}
.question-text.editable.has-text-formatting-bar .text-formatting-bar {
  display: none;
  clear: right;
}
.question-text.editable.has-text-formatting-bar .asset-mgmt-wrapper {
  display: none;
}
.question-text.editable.has-text-formatting-bar textarea {
  border-top: 0;
}
.question-text.editable.has-text-formatting-bar .qq-upload-drop-area {
  padding: 0;
}
.question-text.editable.has-text-formatting-bar .qq-upload-button {
  width: 100%;
}
.question-text.editable.has-text-formatting-bar .edit-buttons {
  padding-bottom: 16px;
}
.discsol-add {
  position: relative;
  padding: 0 16px 24px;
  border-top: 0;
  border-bottom: 1px solid #d4d4d4;
  margin: 0 -16px 24px;
  box-sizing: content-box;
  z-index: 2;
}
.discsol-add .title {
  margin-bottom: 8px;
  font-size: 18px;
  font-weight: 500;
}
.discsol-add .discsol-post-wrapper {
  margin: 0;
}
.discsol-add .discsol-post {
  border-bottom: 0;
  margin-bottom: 16px;
}
.discsol-add .editor {
  margin-bottom: 16px;
}
.discsol-add .solution-form {
  padding-right: 0;
}
.discsol-add .solution-form-buttons {
  opacity: 1;
}
.discsol-add .solution-content {
  margin: 0;
}
.discsol-add .solution-form-footer .formatting-guide {
  margin-top: -6px;
}
.discsol-add.has-text-formatting-bar textarea {
  border-top: 0;
}
.author-alert {
  margin-bottom: 24px;
  text-align: center;
}
.discsol-list-header {
  margin-bottom: 8px;
}
.discsol-list-header h2 {
  float: left;
  font-size: 18px;
  font-weight: 500;
}
.discsol-list-header h3 {
  float: right;
  margin-top: 3px;
  font-size: 14px;
  font-weight: 500;
  color: #bbb;
}
.solution-next-page {
  display: block;
  width: 276px;
  margin: 0 auto;
}
.solution-next-page.loading {
  background: transparent;
  box-shadow: none;
}
.solution-next-page.loading:hover {
  background: transparent;
}
.solution-next-page.loading span {
  display: none;
}
.solution-next-page.loading .spinner {
  display: inline-block;
}
.solution-next-page .spinner {
  display: none;
  vertical-align: -2px;
}
.solution-header {
  position: relative;
  padding: 0 76px 12px 46px;
  font-size: 14px;
  line-height: 1.3em;
}
.solution-header .avatar {
  position: absolute;
  top: 2px;
  left: 0;
}
.solution-vote {
  position: absolute;
  top: 0;
  right: 0;
  width: 152px;
  box-shadow: none;
}
.solution-vote:hover .btn {
  color: #777;
  background: #e3e3e3;
}
.solution-vote.voted:hover .count {
  background: #848484;
}
.solution-vote.voted .vote-label {
  display: none;
}
.solution-vote.voted .voted-label {
  display: inline;
}
.solution-vote.voted .count {
  color: #fff;
  background: #919191;
}
.solution-vote.disabled {
  opacity: 0.5;
}
.solution-vote.disabled:hover .btn {
  cursor: default;
}
.solution-vote.disabled .btn {
  background: #f0f0f0;
}
.solution-vote .btn {
  padding: 7px 0;
  margin: 0;
  border: 0;
  background: #f0f0f0;
  line-height: 1.4em;
  font-size: 14px;
}
.solution-vote .btn:first-child {
  width: 70%;
  padding-left: 20px;
  border-right: 1px solid #fff;
  text-align: left;
}
.solution-vote .btn:last-child {
  width: 30%;
  border-left: 1px solid #fff;
}
.solution-vote .icon {
  margin-right: 3px;
  background-position: -20px -39px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: inline-block;
  width: 8px;
  height: 11px;
}
.solution-vote .voted-label {
  display: none;
}
.solution-note {
  position: relative;
  padding: 16px 24px 16px 70px;
  margin-bottom: 16px;
  background: #f7f7f7;
  font-size: 14px;
  font-family: 'Soleil', Arial, sans-serif;
}
.solution-note > .icon {
  position: absolute;
  top: 16px;
  left: 24px;
  background-position: -254px -30px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 30px;
  height: 30px;
}
.solution-note h4 {
  font-size: 14px;
}
.solution-note p:last-child {
  margin: 0;
}
.solution-note .image-gallery div .main-image {
  min-width: 0;
}
.discsol-post-wrapper {
  margin-bottom: 24px;
}
.discsol-post-wrapper:last-child {
  margin-bottom: 0;
}
.discsol-post-wrapper.comments-expanded .discsol-post {
  border-radius: 3px 3px 0 0;
}
.discsol-post-wrapper.comments-expanded .solution-comments-trigger span {
  display: none;
}
.discsol-post-wrapper.comments-expanded .solution-comments-trigger .on-expanded {
  display: inline;
}
.discsol-post-wrapper.comments-expanded .discsol-comments {
  display: block;
}
.disc-review-filter {
  padding: 8px 16px;
  margin-bottom: 16px;
  background: rgba(233, 30, 99, 0.1);
  color: #e91e63;
  font-size: 13px;
  border-radius: 4px;
}
.disc-review-filter h4 {
  float: left;
  margin: 0 24px 0 0;
  font-size: 13px;
  line-height: 26px;
  color: #e91e63;
}
.disc-review-filter fieldset {
  float: left;
  margin-right: 24px;
}
.disc-review-filter strong {
  font-weight: normal;
  line-height: 26px;
}
.disc-review-filter select {
  width: auto;
  height: 26px;
  margin: 0 0 0 4px;
  padding: 0 24px 0 8px;
  border-color: rgba(233, 30, 99, 0.5);
  vertical-align: -2px;
  color: #e91e63;
  font-size: 13px;
}
.discsol-post-wrapper.reviewable-hidden {
  display: none;
}
.discsol-post-wrapper.reviewable-dim .solution {
  opacity: 0.3;
}
.discsol-post-wrapper .comment-item.reviewable-hidden {
  display: none;
}
.discsol-post-wrapper .comment-item.reviewable-dim {
  opacity: 0.3;
}
.discsol-post {
  padding: 0;
  background: #fff;
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.3);
  border-radius: 3px;
}
.solution-main {
  padding: 24px;
}
.solution-content {
  margin-bottom: 24px;
}
.solution-footer .action {
  display: inline-block;
  margin-right: 10px;
}
.solution-footer .subscr form {
  margin: 0;
}
.solution-footer .subscr .btn {
  width: auto;
  padding: 0;
  border: 0;
  color: #0277bd;
  font-size: 14px;
}
.solution-footer .subscr .btn:hover {
  background: transparent;
  color: #039be5;
}
.discsol-add .wiki-field,
.discsol-post .wiki-field {
  margin-bottom: 16px;
}
.discsol-add .wiki-field label,
.discsol-post .wiki-field label {
  padding-top: 2px;
}
.discsol-add .wiki-field input,
.discsol-post .wiki-field input {
  width: 100%;
  margin: 0;
  padding: 0 8px;
}
.discsol-post .wiki-field label {
  width: 252px;
}
.discsol-post .wiki-field .field {
  width: 618px;
}
@media screen and (min-width: 700px) and (max-width: 1200px) {
  .discsol-post .wiki-field label {
    width: 200px;
  }
  .discsol-post .wiki-field .field {
    width: 486px;
  }
}
.discsol-post.has-text-formatting-bar textarea {
  border-top: 0;
}
.solution-comments-trigger {
  width: 100%;
  padding: 5px 0;
  border: 0;
  border-top: 1px solid #d4d4d4;
  text-align: center;
  color: #777;
  background: #fff;
  font-size: 13px;
  font-weight: 500;
  box-sizing: content-box;
  border-radius: 0 0 4px 4px;
}
.solution-comments-trigger:hover {
  color: #0277bd;
}
.solution-comments-trigger .on-expanded {
  display: none;
}
.discsol-comments {
  position: relative;
  padding-right: 16px;
  z-index: 2;
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.3);
  border-radius: 0 0 3px 3px;
}
.discsol-comments .top-level-comment-form {
  padding: 16px 0 0 64px;
}
.discsol-comments .top-level-comment-form.empty .comment-form {
  border: 0;
}
.discsol-comments .no-comments {
  display: none;
}
.discsol-comments .disc-comments {
  margin: 0;
}
body.js .discsol-comments .cmp-deferred {
  padding: 40px 0;
}
body.js .discsol-comments .cmp-deferred .spinner {
  margin: 0 auto;
}
.edit-solution-form {
  padding-right: 0;
}
.solution-form-footer .formatting-guide {
  margin-top: 6px;
}
.solution-form-footer .formatting-guide a {
  color: #777;
}
.solution-form-footer .formatting-guide a:hover {
  color: #0277bd;
}
.solution-form-footer .solution-form-buttons {
  position: static;
  width: 100%;
  padding: 0;
  opacity: 1;
}
.solution-form-footer .solution-form-buttons span:not(.btn) {
  float: right;
  padding: 6px 0;
  text-align: center;
  cursor: pointer;
  margin-right: 24px;
}
.discsol-post .solution-form-footer {
  margin-top: 16px;
}
.btn.expand-all-threads {
  position: relative;
  overflow: hidden;
  border: 1px solid #e91e63;
  margin-bottom: 16px;
  float: right;
  font-size: 13px;
}
.btn.expand-all-threads,
.btn.expand-all-threads:focus {
  color: #333;
}
.btn.expand-all-threads .expanding,
.btn.expand-all-threads .expanded,
.btn.expand-all-threads.disabled .collapsed,
.btn.expand-all-threads.expanded .collapsed {
  display: none;
}
.btn.expand-all-threads.disabled:not(.expanded) .expanding,
.btn.expand-all-threads.expanded:not(.disabled) .expanded {
  display: inline;
}
.btn.expand-all-threads.disabled .spinner {
  position: static;
}
.btn.expand-all-threads .spinner {
  position: absolute;
  top: -100px;
  left: -100px;
  margin-right: 8px;
  vertical-align: -3px;
}
.solution-review {
  position: absolute;
  top: 9px;
  right: 24px;
}
.solution-review form {
  display: inline;
}
.solution-review button {
  margin: 0 !important;
  font-size: 13px;
}
.solution-review span {
  color: #6d7e8e;
  font-size: 13px;
  opacity: 0.5;
}
.solution-img-uploader.hide {
  display: none;
}
.solution-img-uploader .qq-upload-button {
  float: right;
  width: 100%;
  border-color: #fff;
  color: #0277bd;
}
.solution-img-uploader .qq-upload-button:hover {
  background: transparent;
  color: #039be5;
}
.solution-img-uploader .qq-upload-drop-area {
  padding: 3px 0;
}
.solution-img-uploader .spinner {
  float: left;
  margin: 6px -16px 0 0;
}
.dispute-resolve-form {
  margin: 0;
}
.solv-native-webview .solv-main.big {
  background: #ecedef;
}
.discsol-add {
  margin: 0 0 20px;
  background: #fff;
  border-radius: 10px;
  box-sizing: border-box;
  border: 0;
}
.discsol-add.cmmnt {
  padding: 16px 24px;
  border-top: 0;
}
.discsol-add .discsol-add-guide table.table {
  border: 0;
  border-spacing: 0 8px;
}
.discsol-add .discsol-add-guide table.table td {
  border: 0;
}
.discsol-add .discsol-add-guide table.table th {
  border-bottom: 1px solid #c2c4cf;
}
.discsol-add .btn.preview {
  background: #f7f7f8;
  border: 0;
  font-weight: 500;
}
.discsol-add .text p {
  line-height: 1.54em;
}
.discsol-add .solution-header {
  padding-left: 56px;
  font-size: 13px;
  line-height: 1.6em;
  color: #899098;
}
.discsol-add .solution-header .text {
  font-size: 13px;
  line-height: 1.6em;
  color: #899098;
}
.discsol-add .solution-header strong {
  color: #6d7e8e;
  font-weight: 500;
}
.discsol-add .solution-header a {
  color: #6d7e8e;
}
.text-formatting-bar {
  border: 1px solid #e7e7e9;
  border-radius: 5px 5px 0 0;
  box-shadow: none;
}
.text-formatting-bar .btn {
  border: 1px solid #e7e7e9;
  border-width: 0 1px;
  background: #f7f7f8;
}
.text-formatting-bar .btn:first-child {
  border-top-left-radius: 5px;
  border-left: 0;
}
.text-formatting-bar .btn:last-child {
  border-top-right-radius: 5px;
  border-right: 0;
}
.big .cmmnt .avatar img {
  width: 40px;
  height: 40px;
}
.discsol-list {
  padding: 0;
  margin: 0;
  border: 0;
  box-sizing: border-box;
}
.discsol-list .text p {
  line-height: 1.54em;
}
.discsol-list .solution-header,
.discsol-list .comment-profile {
  padding: 0 0 16px 56px;
  font-size: 13px;
  line-height: 1.6em;
  color: #899098;
}
.discsol-list .solution-header .text,
.discsol-list .comment-profile .text {
  font-size: 13px;
  line-height: 1.6em;
  color: #899098;
  padding-top: 8px;
}
.discsol-list .solution-header strong,
.discsol-list .comment-profile strong,
.discsol-list .solution-header a,
.discsol-list .comment-profile a {
  color: #6d7e8e;
  font-weight: 500;
}
.discsol-list .solution-content {
  margin-bottom: 0;
}
.discsol-list .discsol-post-wrapper {
  background: #fff;
  border-radius: 10px;
}
.discsol-list .discsol-post-wrapper.comments-expanded .discsol-post {
  background: transparent;
}
.discsol-list .discsol-post {
  border-radius: 10px;
  box-shadow: none;
}
.discsol-list .discsol-post.cmmnt {
  padding-bottom: 0;
}
.discsol-list .cmmnt {
  border: 0;
  padding-top: 0;
  padding-bottom: 12px;
}
.discsol-list .cmmnt-container .cmmnt-container .cmmnt {
  padding-top: 0;
}
.discsol-list .discsol-comments {
  box-shadow: none;
}
.discsol-list .comment-review {
  position: absolute;
  top: 0;
  right: 8px;
  z-index: 2;
}
.discsol-list .comment-review form {
  display: inline;
}
.discsol-list .comment-review button {
  color: #6d7e8e;
  font-weight: bold;
  font-size: 13px;
}
.discsol-list .comment-review span {
  color: #6d7e8e;
  font-size: 13px;
  opacity: 0.5;
}
.discsol-list .comment-content p:last-of-type {
  margin-bottom: 0;
}
.discsol-list .comment-content .meta {
  padding: 0;
}
.discsol-list .comment-content .btn-link {
  font-weight: 500;
  color: #6d7e8e;
  font-size: 13px;
}
.discsol-list .comment-content .comment-reply,
.discsol-list .comment-content .show-replies,
.discsol-list .comment-content .hide-replies,
.discsol-list .comment-content .comment-menu {
  float: right;
  margin-top: 4px;
  margin-left: 24px;
}
.discsol-list .comment-content .comment-menu .btn-link {
  font-size: 24px;
  margin-right: 8px;
}
.discsol-list .solution-comments-trigger {
  width: auto;
  padding: 0;
  border: 0;
  color: #6d7e8e;
}
.discsol-list .solution-footer .btn-link,
.discsol-list .edit-subscribe .btn-link {
  font-weight: 500;
  color: #6d7e8e;
  font-size: 13px;
  margin-right: 24px;
}
.discsol-list .solution-footer .btn-link:hover,
.discsol-list .edit-subscribe .btn-link:hover {
  color: #1f1f1f;
}
.discsol-list .solution-footer form,
.discsol-list .edit-subscribe form {
  margin-bottom: 0;
}
.discsol-list .solution-footer .action,
.discsol-list .edit-subscribe .action {
  display: inline-block;
  margin-bottom: 4px;
}
.discsol-list .solution-form-footer .formatting-guide .guide-link {
  color: #6d7e8e;
  font-weight: 500;
}
.discsol-list .top-level-comment-form .comment-form {
  padding-bottom: 24px;
}
.discsol-list .no-posts {
  font-size: 22px;
  color: #899098;
}
.discsol-list .btn-accent.btn-gray {
  padding-top: 6px;
  padding-bottom: 6px;
  border: 0;
  background: #ecedef;
  color: #005ffa;
  font-size: 13px;
  font-weight: 500;
}
.discsol-list .reply-form-wrapper .cancel-edit-trigger {
  font-weight: 500;
  color: #6d7e8e;
  font-size: 13px;
}
.hide-no-posts .discsol-list .no-posts {
  display: none;
}
.discsol-comments {
  display: block;
}
.notify-about-good-solution {
  position: absolute;
  top: 50%;
  right: 2px;
  margin-top: -11px;
  width: 22px;
  height: 22px;
  background: #777;
  color: #333;
  z-index: 1;
  border-radius: 50%;
}
.notify-about-good-solution.open {
  background: #039be5;
}
.notify-about-good-solution.open .dropdown-toggle:before {
  -webkit-animation: anim-wiggle-more 300ms infinite;
  animation: anim-wiggle-more 300ms infinite;
}
.notify-about-good-solution.loading {
  background: #fff;
}
.notify-about-good-solution.loading .dropdown-toggle:before {
  width: 16px;
  height: 16px;
  margin: -8px 0 0 -8px;
  background: url(/site_media/version-DDApf1t4iV/images/spinner-dark.gif) center center no-repeat;
}
.notify-about-good-solution .arrow {
  display: none;
}
.notify-about-good-solution .dropdown-toggle {
  width: 100%;
  height: 100%;
  background: url(/site_media/version-DDApf1t4iV/images/spinner-dark.gif) -999999px -999999px no-repeat;
  position: absolute;
  left: 0;
  top: 0;
  padding: 0;
  border: 0;
  cursor: default;
}
.notify-about-good-solution .dropdown-toggle:before {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  margin: -10.5px 0 0 -7px;
  background-image: url(/site_media/sprite-4bc4961b973/build/sprites/css-sprite-solvables.png);
  background-position: -156px -185.5px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 15px;
  height: 17px;
}
@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx) {
  .notify-about-good-solution .dropdown-toggle:before {
    background-image: url(/site_media/sprite-4bc4961b973/build/sprites/css-sprite-solvables-x2.png);
    background-size: 335px 245px;
  }
}
.notify-about-good-solution .dropdown-menu {
  display: none;
  left: auto;
  right: -2px;
  width: 190px;
  padding: 16px;
  margin: 0 0 12px 0;
  text-align: center;
  border-radius: 2px;
}
.notify-about-good-solution .dropdown-menu form,
.notify-about-good-solution .dropdown-menu p {
  padding: 0;
  margin: 0;
}
.notify-about-good-solution .dropdown-menu button {
  padding-left: 0 !important;
  padding-right: 0 !important;
  margin-top: 20px;
}
.solv-recommendations {
  margin-top: 24px;
}
.solv-recommendations h2 {
  margin-bottom: 16px;
  font-size: 18px;
}
.solv-recommendation-item {
  position: relative;
  min-height: 81px;
  padding: 16px 16px 16px 70px;
  margin-bottom: 24px;
  color: #333;
  line-height: 16px;
  background: #fff;
  border-radius: 4px;
  border: 1px solid #d4d4d4;
  box-shadow: 0 0 0 1px #f3f3f3;
}
.solv-recommendation-item:hover {
  border-color: #039be5;
  color: #333;
}
.solv-recommendation-item:hover .topic-icon-small {
  -webkit-animation: anim-wiggle-more 300ms infinite;
  animation: anim-wiggle-more 300ms infinite;
}
.solv-recommendation-item .icon {
  position: absolute;
  top: 50%;
  left: 16px;
  margin-top: -19.5px;
}
.solv-recommendation-item h4 {
  margin-bottom: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.solv-recommendation-item p {
  margin: 0;
}
.solv-recommendation-item strong {
  margin-right: 2px;
}
.recommended-problems .most-popular-recommended-problem {
  display: none;
}
.solv-recommend-quizzes {
  margin: 24px 0;
}
.solv-recommend-quizzes h2 {
  margin-bottom: 16px;
  font-size: 18px;
}
.solv-recommend-quizzes .quiz {
  position: relative;
  padding: 16px;
  background: #fff;
  color: #777;
  border-radius: 4px;
  border: 1px solid #d4d4d4;
  box-shadow: 0 0 0 1px #f3f3f3;
}
.solv-recommend-quizzes .quiz.concept {
  padding-left: 70px;
}
.solv-recommend-quizzes .quiz.challenge {
  padding-left: 74px;
}
.solv-recommend-quizzes .quiz.b2 {
  padding-right: 24px;
}
.solv-recommend-quizzes .quiz.active,
.solv-recommend-quizzes .quiz:hover {
  border-color: #039be5;
}
.solv-recommend-quizzes .b2-flag {
  position: absolute;
  top: 0;
  right: 0;
  width: 24px;
  height: 24px;
  background: #00bd8e;
  color: #fff;
  font-size: 13px;
  line-height: 24px;
  text-align: center;
  border-radius: 0 2px 0 0;
}
.solv-recommend-quizzes .b2-flag:after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -9px;
  margin-left: -9px;
  background-image: url(/site_media/sprite-d24c59ae143/build/sprites/css-sprite-logos.png);
  background-position: -314px -30px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 18px;
  height: 18px;
}
@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx) {
  .solv-recommend-quizzes .b2-flag:after {
    background-image: url(/site_media/sprite-d24c59ae143/build/sprites/css-sprite-logos-x2.png);
    background-size: 340px 190px;
  }
}
.solv-recommend-quizzes h4 {
  margin-bottom: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.solv-recommend-quizzes .icon {
  position: absolute;
  top: 50%;
  left: 16px;
  will-change: transform;
}
.solv-recommend-quizzes .recommended-text {
  margin-left: 4px;
  color: #e5b100;
  font-size: 14px;
  font-weight: 500;
}
@-webkit-keyframes conceptquizbounce {
  0% {
    -webkit-transform: translate(0px, 0);
  }
  15% {
    -webkit-transform: translate(8px, 0);
  }
  30% {
    -webkit-transform: translate(-6px, 0);
  }
  45% {
    -webkit-transform: translate(4px, 0);
  }
  60% {
    -webkit-transform: translate(-2px, 0);
  }
  85% {
    -webkit-transform: translate(1px, 0);
  }
  100% {
    -webkit-transform: translate(0px, 0);
  }
}
@keyframes conceptquizbounce {
  0% {
    transform: translate(0px, 0);
  }
  15% {
    transform: translate(8px, 0);
  }
  30% {
    transform: translate(-6px, 0);
  }
  45% {
    transform: translate(4px, 0);
  }
  60% {
    transform: translate(-2px, 0);
  }
  85% {
    transform: translate(1px, 0);
  }
  100% {
    transform: translate(0px, 0);
  }
}
@-webkit-keyframes challengequizspin {
  0% {
    -webkit-transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
  }
}
@keyframes challengequizspin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.concept-quiz-icon {
  margin-top: -19px;
  background-position: -283px -157px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 38px;
  height: 38px;
}
.concept-quiz-icon.animated {
  -webkit-animation: conceptquizbounce 1s 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  animation: conceptquizbounce 1s 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.challenge-quiz-icon {
  margin-top: -20px;
  background-position: -199px -157px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 42px;
  height: 40px;
}
.challenge-quiz-icon.animated {
  -webkit-animation: challengequizspin 1s 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  animation: challengequizspin 1s 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.solv-recommend-quizzes .quiz.active .concept-quiz-icon,
.solv-recommend-quizzes .m-quiz.active .concept-quiz-icon {
  background-position: -243px -157px;
}
.solv-recommend-quizzes .quiz.active .challenge-quiz-icon,
.solv-recommend-quizzes .m-quiz.active .challenge-quiz-icon {
  background-position: -155px -157px;
  transform-origin: 50% 21px;
}
.solv-recommend-quizzes .quiz.animated .concept-quiz-icon,
.solv-recommend-quizzes .m-quiz.animated .concept-quiz-icon {
  -webkit-animation: conceptquizbounce 1s 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  animation: conceptquizbounce 1s 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.solv-recommend-quizzes .quiz.animated .challenge-quiz-icon,
.solv-recommend-quizzes .m-quiz.animated .challenge-quiz-icon {
  -webkit-animation: challengequizspin 1s 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  animation: challengequizspin 1s 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.dispute-disc-modal {
  width: 624px;
}
.dispute-disc-modal .qq-upload-button {
  background: #fff;
}
.dispute-disc-modal .close {
  position: absolute;
  top: 24px;
  right: 24px;
}
.dispute-disc-modal .modal-body {
  padding-bottom: 25px;
  text-align: left;
}
.dispute-disc-modal label {
  margin: 0;
  padding: 0 0 6px 0;
  font-size: 17px;
  cursor: pointer;
}
.dispute-disc-modal input[type='radio'] {
  margin: 0 10px 0 0;
  vertical-align: -1px;
}
.dispute-disc-modal .content {
  padding: 0;
}
.dispute-disc-modal .explanation {
  display: none;
  margin-top: 16px;
  padding-top: 24px;
  border-top: 1px solid #333;
}
.dispute-disc-modal .explanation.visible {
  display: block;
}
.dispute-disc-modal .discsol-add {
  padding: 0;
  margin: 0;
  border: 0;
  background: none;
  box-shadow: none;
}
.dispute-disc-modal .discsol-add textarea {
  padding: 5px 10px;
  margin: 0 0 5px 0;
  min-height: 90px;
}
.dispute-disc-modal .solution-form-footer .formatting-guide {
  margin-top: 4px;
  font-size: 15px;
}
.dispute-disc-modal .solution-img-uploader {
  margin-top: 0;
}
.dispute-disc-modal .end-state p {
  text-align: center;
}
.dispute-disc-modal .final-actions {
  margin-top: 24px;
}
.dispute-disc-modal .back {
  width: 41%;
  padding: 16px 32px;
  margin: 0 4% 0 5%;
  float: left;
  font-size: 18px;
}
.dispute-disc-modal .back.dim {
  opacity: 1;
}
.dispute-disc-modal .view-reports {
  width: 41%;
  margin: 0 0 0 4%;
  float: left;
  position: relative;
}
.dispute-disc-modal .view-reports.loading .view,
.dispute-disc-modal .view-reports.loading p {
  opacity: 0;
}
.dispute-disc-modal .view-reports.loading .spinner {
  display: inline-block;
}
.dispute-disc-modal .view-reports .view {
  font-size: 18px;
  color: #0277bd;
  cursor: pointer;
}
.dispute-disc-modal .view-reports .view:hover {
  color: #039be5;
}
.dispute-disc-modal .view-reports p {
  margin: 4px 0 0 0;
  font-size: 15px;
  line-height: 1.2em;
  text-align: left;
}
.dispute-disc-modal .view-reports .spinner {
  display: none;
  margin: -8px 0 0 -8px;
  position: absolute;
  left: 50%;
  top: 50%;
}
.dispute-form-modal form {
  margin: 0;
}
.dispute-form-modal h3 {
  margin-bottom: 16px;
  font-weight: bold;
}
.dispute-form-modal p {
  margin-bottom: 12px;
  font-size: 15px;
}
.dispute-form-modal p.small {
  font-size: 14px;
}
.dispute-form-modal textarea {
  width: 100%;
  height: 80px;
  margin: 16px 0 0;
}
.dispute-form-modal.out .modal-body {
  opacity: 0;
}
.dispute-form-modal .modal-body {
  text-align: left;
  opacity: 1;
  -webkit-transition: opacity 200ms linear;
  transition: opacity 200ms linear;
}
.dispute-form-modal label {
  position: relative;
  padding-left: 24px;
}
.dispute-form-modal label input {
  position: absolute;
  left: 0;
  top: 2px;
}
.dispute-form-modal .errorlist {
  width: 100%;
}
.dispute-form-modal .choice label {
  font-size: 1em;
}
.dispute-form-modal span.helptext {
  font-size: 14px;
  color: #919191;
}
.dispute-form-modal .choose-choice {
  width: 100%;
  margin-top: 24px;
}
.dispute-form-modal .choose-choice.hide {
  display: none;
}
.dispute-form-modal .choose-choice.disabled:focus {
  background: #039be5;
}
.dispute-form-modal .cancel {
  padding-top: 16px;
  text-align: center;
}
.dispute-form-modal .cancel a {
  font-size: 15px;
}
.dispute-form-modal .note {
  position: absolute;
  right: 23px;
  bottom: 144px;
  width: 50%;
  margin: 0 !important;
  line-height: 1.3em;
  text-align: right;
  font-size: 12px !important;
  color: #919191;
}
.reveal-disputes-modal {
  padding-top: 24px;
}
.reveal-disputes-modal .btn {
  width: 48%;
}
.reveal-disputes-modal .btn.back {
  float: left;
}
.reveal-disputes-modal .btn.view {
  float: right;
}
.reveal-disputes-modal .btn.view.loading .text {
  display: none;
}
.reveal-disputes-modal .btn.view.loading .spinner {
  display: inline-block;
}
.reveal-disputes-modal .btn.view .spinner {
  display: none;
  vertical-align: -3px;
}
body:not(.active) .solv-main:not(.prac-anon-item) {
  margin-bottom: 40px;
}
.solv-details-loggedout {
  margin-bottom: 16px;
}
.solv-details-loggedout.solv-public-form.open form {
  display: block;
}
.logged-out-mcq-form .solution {
  margin: 0 auto;
  float: none;
  clear: both;
}
.solv-public-form.open form {
  display: none;
}
.solv-public-form.open .solv-public-signup,
.solv-public-form.open .public-signup-modal {
  display: block;
}
.solv-public-form.disc-form {
  margin: 60px 0 -8px 0;
  width: 100%;
}
.solv-public-form .text {
  margin-bottom: 24px;
}
.solv-public-form form {
  display: block;
  margin-top: 0;
}
.solv-public-signup {
  display: none;
  position: absolute;
}
.solv-public-signup.open,
.solv-public-signup.open .public-signup-modal,
.solv-public-signup.open .public-signup-modal-experiment {
  display: block;
}
.hundredday-page #logged-out-mobile-header {
  border-bottom: 1px solid #d4d4d4;
}
.hundredday-wrapper.centered {
  float: none;
  margin: 0 auto;
}
@-webkit-keyframes irloading {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  20% {
    -webkit-transform: scale(1.2);
    transform: scale(1.2);
  }
  40% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}
@keyframes irloading {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  20% {
    -webkit-transform: scale(1.2);
    transform: scale(1.2);
  }
  40% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}
.solv-ir-loading {
  text-align: center;
}
.solv-ir-loading.prac-text {
  padding: 10px 0;
}
.solv-ir-loading.prac-mcq {
  padding: 86px 0;
}
.solv-ir-loading span {
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: 0 5px;
  background: rgba(0, 0, 0, 0.2);
  -webkit-transform: scale(1);
  transform: scale(1);
  border-radius: 50%;
}
.solv-ir-loading span:first-child {
  -webkit-animation: irloading 1s ease infinite;
  animation: irloading 1s ease infinite;
}
.solv-ir-loading span:nth-child(2) {
  -webkit-animation: irloading 1s ease 100ms infinite;
  animation: irloading 1s ease 100ms infinite;
}
.solv-ir-loading span:last-child {
  -webkit-animation: irloading 1s ease 200ms infinite;
  animation: irloading 1s ease 200ms infinite;
}
.solv-footer {
  position: relative;
}
.solv-footer .action-menus {
  position: absolute;
  right: -4px;
}
.solv-footer .action-menus .open .dropdown-toggle {
  opacity: 0.8;
}
.solv-footer .action-menus .dropdown-toggle {
  color: #777;
  font-size: 12px;
}
.solv-footer .action-menus .dropdown-menu .arrow {
  display: none;
}
.solv-footer .action-menus .dropdown-menu .report-link.active {
  color: #777;
  cursor: default;
}
.solv-footer .action-menus .dropdown-menu .report-link.active:hover {
  color: #777;
}
.solv-footer .more-menu {
  margin-top: 0;
  z-index: 1;
}
.solv-footer .more-menu .dots {
  margin-left: 0;
  background: transparent;
}
.solv-footer .more-menu .dots em {
  display: inline-block;
  margin-right: 15px;
  vertical-align: 2px;
  overflow: visible;
}
.solv-footer .more-menu .dots em,
.solv-footer .more-menu .dots em:before,
.solv-footer .more-menu .dots em:after {
  width: 4px;
  height: 4px;
  background: #777;
  border-radius: 50%;
  position: relative;
}
.solv-footer .more-menu .dots em:before,
.solv-footer .more-menu .dots em:after {
  content: '';
  position: absolute;
}
.solv-footer .more-menu .dots em:before {
  left: 6px;
}
.solv-footer .more-menu .dots em:after {
  left: 12px;
}
.solv-footer .more-menu .dropdown-menu {
  padding: 8px 16px;
}
.solv-footer .solv-actions-list {
  margin-bottom: 0;
  overflow-x: hidden;
  overflow-y: auto;
}
.solv-footer .solv-actions-list::-webkit-scrollbar {
  width: 8px;
}
.solv-footer .solv-actions-list::-webkit-scrollbar-track {
  background: #f0f0f0;
  border-radius: 4px;
}
.solv-footer .solv-actions-list::-webkit-scrollbar-thumb {
  background: #d8d8d8;
  border-radius: 4px;
}
.solv-footer .solv-actions-list .solv-staff-disputes .btn-link,
.solv-footer .solv-actions-list a.admin-link,
.solv-footer .solv-actions-list .btn-link.admin-link {
  color: #e91e63;
}
.solv-footer .solv-actions-list .solv-staff-disputes .btn-link:hover,
.solv-footer .solv-actions-list a.admin-link:hover,
.solv-footer .solv-actions-list .btn-link.admin-link:hover {
  color: #c1134e;
}
.solv-footer .sharing-dd {
  width: auto;
}
.solv-footer .sharing-dd .dropdown-toggle {
  margin: 0;
}
.solv-footer .sharing-dd .dropdown-toggle em {
  margin: 0 2px 0 0;
  vertical-align: -3px;
  background-position: -122px -63px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: inline-block;
  width: 18px;
  height: 14px;
  -webkit-transition: none;
  transition: none;
}
.solv-footer .sharing-dd .dropdown-toggle em:before {
  display: none;
}
.solv-footer .sharing-dd .dropdown-toggle span {
  position: static;
}
.solv-footer .sharing-dd .dropdown-menu {
  padding: 16px;
  right: 0;
}
.solv-footer .sharing-dd .bsharing-container {
  padding-bottom: 16px;
  text-align: center;
}
.solv-footer .sharing-dd .direct-link {
  background: #fbfbfb;
  border: 1px solid #777;
}
.solv-footer .sharing-dd .direct-link span {
  display: inline-block;
  padding-left: 8px;
  float: left;
  font-size: 12px;
  line-height: 32px;
  color: #777;
}
.solv-footer .sharing-dd .direct-link input {
  height: 30px;
  padding-right: 8px;
  margin: 0;
  float: right;
  background: transparent;
  border: 0;
  box-shadow: none;
  font-size: 16px;
}
.solv-main.solutions .solv-solutions,
.solv-main.solutions .b2-solution {
  display: block;
}
.solv-main.solutions .btn-solution .solutions-hidden {
  display: none;
}
.solv-main.solutions .btn-solution .solutions-visible {
  display: inline;
}
.solv-main.disputes .solv-disputes {
  display: block;
}
.solv-main img {
  max-width: 100%;
}
.solv-details.endstate h3 {
  color: #333;
  font-size: 22px;
  font-weight: 500;
  line-height: 1.4em;
}
.solv-details h3 em {
  display: block;
  margin-top: 4px;
  font-style: normal;
  font-size: 15px;
  font-weight: normal;
  line-height: 1.3em;
  color: #919191;
}
.solv-details .more-details {
  color: #919191;
  font-size: 15px;
}
.solv-details .more-details p {
  margin-bottom: 0;
}
.solv-details .btn-solution .solutions-visible {
  display: none;
}
.solv-details .esr-problem,
.solv-details .btn-next {
  margin-bottom: 16px;
}
.solv-details .tada,
.solv-details .thinking-face {
  margin-left: 8px;
}
.solv-details .tada {
  background-position: -287px -157px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: inline-block;
  width: 19.5px;
  height: 19.5px;
}
.solv-details .thinking-face {
  background-position: -308.5px -157px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: inline-block;
  width: 18px;
  height: 19px;
  vertical-align: -2px;
}
.solv-details .eyes {
  background-position: -239px -157px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: inline-block;
  width: 22px;
  height: 23px;
  vertical-align: -3px;
}
.solv-details .point-down {
  background-position: -263px -157px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: inline-block;
  width: 22px;
  height: 23px;
}
.solv-details.endstate .btn-mcq {
  opacity: 0.5;
}
.solv-details.endstate .btn-mcq.correct {
  opacity: 1;
}
.btn-solution.wiggle,
.solution-button-wrapper.wiggle {
  -webkit-animation-iteration-count: 2;
  animation-iteration-count: 2;
}
.solv-details-footer .solution-button-wrapper.has-wiki,
.solv-details-footer .wiki-button-wrapper {
  float: left;
}
.solv-form-text,
.solv-tries-left,
.solv-one-or-more {
  display: inline;
  margin-bottom: 0;
}
.solv-form-text,
.solv-tries-left {
  color: #bbb;
}
.solv-one-or-more {
  color: #333;
}
.solv-disputes-alert {
  padding-right: 12px;
}
.solv-disputes-alert .view-disputes {
  text-decoration: underline;
}
.solv-form form {
  margin: 8px 0 0;
}
.solv-form .fields input {
  width: 100%;
  margin-bottom: 16px;
  box-shadow: inset 0 0 5px rgba(51, 51, 51, 0.3);
}
.solv-form .under-field-text {
  position: relative;
  margin: -12px 0 16px;
  font-size: 12px;
  color: #bbb;
}
.solv-form .under-field-text,
.solv-form .under-field-text li {
  line-height: 1.2em;
}
.mcq-form input {
  display: none;
}
.solv-nux-solution {
  margin: 24px 0;
  padding: 24px;
  border-radius: 3px;
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.3);
}
@-webkit-keyframes gradientanim {
  0% {
    transform: translate(0, 0);
  }
  100% {
    transform: translate(-1452px, 0);
  }
}
@keyframes gradientanim {
  0% {
    transform: translate(0, 0);
  }
  100% {
    transform: translate(-1452px, 0);
  }
}
.problem-nux-btn {
  position: relative;
  background: #039be5;
  overflow: hidden;
  -webkit-mask-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAA5JREFUeNpiYGBgAAgwAAAEAAGbA+oJAAAAAElFTkSuQmCC);
}
.problem-nux-btn:after {
  content: '';
  position: absolute;
  top: 0;
  left: 100%;
  width: 1176px;
  height: 100%;
  z-index: 0;
  background: linear-gradient(90deg, rgba(3, 155, 229, 0), #9542fc, #e91e63, #fa8906, #ffc500, #fa8906, #e91e63, #9542fc, rgba(3, 155, 229, 0));
  -webkit-animation: gradientanim 5s linear infinite;
  animation: gradientanim 5s linear infinite;
}
.problem-nux-btn span {
  position: relative;
  z-index: 1;
}
.solv-problem-endstate-text {
  padding-left: 8px;
  margin-bottom: 8px;
  border-left: 16px solid #ffc500;
}
.solv-problem-endstate-text p:last-child {
  margin: 0;
}
.solv-custom-endstate-preview {
  padding: 16px 0 8px 0;
  border: 1px solid #d4d4d4;
  border-width: 1px 0;
}
.solv-custom-endstate-preview > p {
  margin: 0;
}
.solv-custom-endstate-preview > p .katex-display,
.solv-custom-endstate-preview > p .katex-display > .katex,
.solv-custom-endstate-preview > p .katex-display > .katex > .katex-html {
  display: inline;
}
.solv-custom-endstate-preview .solv-problem-endstate-text {
  margin-bottom: 16px;
}
.solv-pane {
  padding-bottom: 16px;
}
.solv-pane.summary-container img {
  max-width: 100%;
}
.solv-pane .pane-cancel-editing {
  float: right;
}
.instant-try-it-yourself .wiki-problem .problem-container {
  position: relative;
}
.instant-try-it-yourself .wiki-problem .problem-container .link-overlay {
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 1;
}
.link-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}
.wiki-problem {
  width: 100%;
  padding: 16px;
  margin-bottom: 24px;
  background: #fff;
  overflow: auto;
  border-radius: 10px;
  border: 1px solid #d4d4d4;
  box-shadow: 0 0 0 1px #f3f3f3;
}
.wiki-problem + .wiki-problem {
  margin-bottom: 0;
}
.wiki-problem:before {
  content: 'Try It Yourself';
  display: block;
  margin-bottom: 10px;
  font-size: 9px;
  color: #919191;
  line-height: 1.2em;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.wiki-problem .problem-container {
  float: left;
  width: 100%;
}
.wiki-problem .question-container {
  padding-right: 24px;
  margin-right: 276px;
}
.wiki-problem .answer-container {
  float: right;
  width: 276px;
}
.wiki-problem .answer-container .btn {
  width: 100%;
}
.wiki-problem img {
  max-width: 476px;
}
.wiki-problem .solv-form form {
  margin: 8px 0 0;
}
.wiki-problem .solv-form .fields input {
  width: 100%;
  margin-bottom: 16px;
  box-shadow: inset 0 0 5px rgba(51, 51, 51, 0.3);
}
.wiki-problem .solv-form .under-field-text {
  position: relative;
  margin: -12px 0 16px;
  font-size: 12px;
  color: #bbb;
}
.wiki-problem .solv-form .under-field-text,
.wiki-problem .solv-form .under-field-text li {
  line-height: 1.2em;
}
.wiki-problem .solv-form .btn-mcq input {
  display: none;
}
.wiki-problem .btn-mcq:not(.disabled):active:before,
.wiki-problem .btn-mcq:not(.disabled):focus:before,
body.no-touch .wiki-problem .btn-mcq:not(.disabled):hover:before {
  border-width: 2px;
}
.wiki-problem .btn-mcq:not(.disabled):active:after,
.wiki-problem .btn-mcq:not(.disabled):focus:after,
body.no-touch .wiki-problem .btn-mcq:not(.disabled):hover:after,
.wiki-problem .btn-mcq:not(.disabled):active .bg,
.wiki-problem .btn-mcq:not(.disabled):focus .bg,
body.no-touch .wiki-problem .btn-mcq:not(.disabled):hover .bg {
  display: none;
}
.wiki-problem .btn-mcq:before {
  z-index: auto;
}
.solv-container {
  padding-top: 24px;
}
.solv-container .solv-container {
  padding: 0;
}
.solv-header {
  position: relative;
  margin-bottom: 16px;
}
.solv-header.editing .old-title-display {
  display: none;
}
.solv-header.editing .edit-title-form {
  display: block;
}
.solv-header h1 {
  display: inline-block;
  margin-bottom: 2px;
  font-size: 22px;
  font-weight: 500;
  line-height: 1.4em;
}
.solv-header svg g {
  fill: #333;
}
.solv-header .old-title-display .css-sprite-global {
  margin: 0 4px;
  cursor: pointer;
  background-position: -244px -218px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: inline-block;
  width: 15px;
  height: 13px;
}
.solv-header .old-title-display .css-sprite-global:hover {
  background-position: -260px -202px;
}
.solv-header .edit-title-form {
  display: none;
  position: relative;
  top: -4px;
}
.solv-header .edit-title-form.hide {
  display: none;
}
.solv-header .edit-title-form form,
.solv-header .edit-title-form p {
  display: inline;
}
.solv-header .edit-title-form label {
  display: none;
}
.solv-header .edit-title-form input[type='text'] {
  float: left;
  padding: 0 8px;
  margin: 0;
  width: 276px;
}
.solv-header .edit-title-form form .btn,
.solv-header .edit-title-form .cancel-edit-link {
  float: left;
  margin-left: 5px;
}
.solv-header .topic-level-info {
  color: #777;
  font-size: 14px;
}
.solv-header .topic-level-info > span {
  cursor: default;
}
.solv-header .topic-level-info > span:first-child {
  margin-right: 4px;
}
.solv-header .topic-level-info a {
  color: #777;
}
.solv-header .topic-level-info a:hover {
  color: #0277bd;
}
.solv-author {
  position: relative;
  overflow: hidden;
  white-space: nowrap;
  font-size: 13px;
  z-index: 1;
}
.solv-author .avatar img {
  width: 30px;
  height: 30px;
  border-radius: 50%;
}
.solv-author .btn-fave {
  padding: 0;
}
.solv-author .btn-fave.active em {
  width: 9px;
  height: 7px;
  background-position: -203px -177px;
  margin: 2px;
}
.solv-author .btn-fave em,
.solv-author .btn-fave.disabled em {
  margin: 2px;
  vertical-align: -1px;
  background-position: -228px -161px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: inline-block;
  width: 10px;
  height: 7px;
  -webkit-transition: none;
  transition: none;
}
.solv-author .btn-fave em:before,
.solv-author .btn-fave.disabled em:before {
  display: none;
}
.solv-author .btn-fave .all-text {
  display: none;
}
.solv-author .btn-fave .new-text {
  display: inline;
  margin-left: 2px;
  color: #0277bd;
}
.solv-author .btn-fave.disabled .new-text {
  color: #333;
}
.solv-author form,
.solv-author div {
  display: inline-block;
  margin: 0;
}
.solv-author .author-container {
  position: relative;
}
.solv-author .author {
  float: left;
  margin-right: 10px;
}
.solv-author .text {
  float: left;
  line-height: 16px;
}
.solv-author .likes-container {
  display: block;
  position: absolute;
  top: 16px;
  margin-left: 40px;
}
.solv-author .btn-fave {
  margin-left: 0;
  line-height: 16px;
}
.solv-author .btn-fave:hover em {
  width: 14px;
  height: 11px;
  background-position: -221px -140px;
  margin: 0;
}
.solv-author .btn-fave:hover .new-text {
  color: #039be5;
}
.solv-author .btn-fave .new-text {
  font-size: 13px;
}
.solv-author .reviewed {
  display: inline-block;
  margin-left: 16px;
  position: relative;
  top: -5px;
}
.solv-author .reviewed span {
  background-position: -79px -47px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: inline-block;
  width: 9px;
  height: 7px;
  margin-right: 5px;
}
.solv-author.logged-out .avatar {
  float: left;
}
.solv-author.logged-out .text {
  margin-left: 10px;
  line-height: 30px;
}
.solv-footer {
  margin-top: 24px;
}
.solv-footer .action-menus {
  bottom: 8px;
}
.solv-footer .action-menus .dropdown-toggle:hover {
  color: #777;
  opacity: 0.8;
}
.solv-footer .action-menus .dropdown-toggle {
  padding: 8px;
  line-height: 1.6em;
}
.solv-footer .more-menu .dots:hover {
  opacity: 0.8;
}
.solv-footer .more-menu .dropdown-menu {
  min-width: 0;
  width: auto;
  margin-bottom: 0;
  right: 0;
}
.solv-footer .sharing-dd .dropdown-toggle {
  margin-right: 8px;
}
.solv-footer .sharing-dd .dropdown-menu {
  width: 256px;
  margin-bottom: 0;
}
.solv-footer .sharing-dd .direct-link input {
  width: 85%;
}
.solv-footer .solv-save {
  margin: 5px;
}
.solv-footer .solv-save form {
  margin: 0;
}
.solv-footer .solv-save button {
  position: relative;
  width: 52px;
  font-size: 13px;
  color: #777;
  background: transparent;
  text-align: left;
  z-index: 1;
}
.solv-footer .solv-save button:before {
  content: '';
  position: absolute;
  top: 3px;
  left: -12px;
  background-image: url(/site_media/sprite-68d8d29d003/build/sprites/css-sprite-quiz.png);
  background-position: -323px -175px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: inline-block;
  width: 12px;
  height: 16px;
  margin-left: -6px;
}
@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx) {
  .solv-footer .solv-save button:before {
    background-image: url(/site_media/sprite-68d8d29d003/build/sprites/css-sprite-quiz-x2.png);
    background-size: 479px 448px;
  }
}
.solv-footer .solv-save button:hover {
  background: transparent;
}
.solv-footer .solv-save button:hover:before {
  width: 12px;
  height: 16px;
  background-position: -323px -157px;
}
.solv-footer .solv-save button.saved:before {
  top: 0;
  left: -26px;
  width: 26px;
  height: 26px;
  background-position: -453px -203px;
}
.solv-footer .solv-save button.saved:hover:before {
  width: 26px;
  height: 26px;
  background-position: -425px -203px;
}
#first-time-save-modal {
  width: 600px;
  padding: 20px 0;
  border-radius: 10px;
  text-align: center;
  font-size: 17px;
  line-height: 1.71em;
}
#first-time-save-modal h1 {
  margin-bottom: 12px;
}
#first-time-save-modal .close {
  position: absolute;
  top: 16px;
  right: 16px;
}
#first-time-save-modal .row {
  margin-bottom: 20px;
  background: #ecedef;
}
#first-time-save-modal .row .quiz-saved-modal {
  margin: 20px auto;
  background-position: 0px 0px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 335px;
  height: 155px;
}
#first-time-save-modal .btn.btn-accent {
  background: #fff;
  border: 1px solid #005ffa;
  color: #005ffa;
}
body:not(.enable-remind-share-buttons) .solv-footer .sharing-dd .bsharing-twitter {
  margin: 0 28px;
}
body.enable-remind-share-buttons .solv-footer .sharing-dd .bsharing-link {
  margin: 0 4px;
}
.solv-main:not(.prac-anon-item) {
  padding: 16px 16px 0;
  border-radius: 10px;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.25);
  background: #fff;
}
body:not(.prac-solvable) .solv-main:not(.prac-anon-item) .solv-problem {
  width: 841px;
}
@media screen and (min-width: 700px) and (max-width: 1200px) {
  body:not(.prac-solvable) .solv-main:not(.prac-anon-item) .solv-problem {
    width: 669px;
  }
}
.solv-details {
  position: relative;
}
.solv-details.endstate:not(.not-answered) a:not(.btn):hover {
  opacity: 0.7;
}
.solv-details.endstate:not(.not-answered) .btn-solution:not(.solution-btn-b2),
.solv-details.endstate:not(.not-answered) .btn-next,
.solv-details.endstate:not(.not-answered) .next-challenge .btn,
.solv-details.endstate:not(.not-answered) .esr-problem {
  display: block;
  float: left;
}
.solv-details.endstate h3 {
  margin-bottom: 4px;
  word-wrap: break-word;
}
.solv-details.endstate .mcq h3 {
  margin-top: 8px;
}
.solv-details.pane-details {
  margin-bottom: 24px;
}
.solv-details .next-challenge .btn {
  display: block;
}
.solv-details .btn-solution.active {
  box-shadow: 0px 1px 3px #bbb;
}
.solv-details .btn-solution.active:not(.btn-accent) {
  color: #0277bd;
}
.solv-details .btn-solution.active.btn-b2-flag {
  color: #00bd8e;
}
.solv-details-footer {
  float: left;
  position: relative;
  padding: 16px 0;
  width: 276px;
}
.solv-details-footer.stuck-bottom {
  position: absolute;
}
.solv-details-footer .solution-button-wrapper.has-wiki {
  width: 138px;
}
.solv-details-footer .wiki-button-wrapper {
  width: 122px;
}
.solv-details-footer .solution-button-wrapper {
  position: relative;
  float: left;
  width: 100%;
}
.solv-details-footer .solution-button-wrapper.has-wiki {
  margin-right: 16px;
}
.solv-details-footer .btn {
  width: 100%;
  font-size: 13px;
  line-height: 1.9em;
  padding-left: 0;
  padding-right: 0;
}
.solv-details-footer .solv-ir-loading {
  padding-top: 16px;
}
.solv-details-footer .btn-wiki-contrib {
  background: #ffde5c;
  color: #333;
}
@media screen and (min-width: 700px) and (max-width: 1200px) {
  .solv-details-footer {
    width: 224px;
  }
  .solv-details-footer .solution-button-wrapper.has-wiki,
  .solv-details-footer .wiki-button-wrapper {
    width: 108px;
  }
  .solv-details-footer .solution-button-wrapper.has-wiki {
    margin-right: 8px;
  }
}
.solv-form-text,
.solv-tries-left,
.solv-one-or-more {
  font-size: 12px;
}
.solv-content {
  width: 100%;
  padding-right: 24px;
}
.solv-content .question-text .btn-edit {
  font-family: 'Soleil', Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.solv-content p,
.solv-content .image-caption {
  margin-bottom: 18px;
}
.solv-content p:empty {
  display: none;
}
.solv-content blockquote p {
  margin-bottom: 0;
}
.solv-content ul,
.solv-content ol {
  margin-bottom: 18px;
}
.solv-content ul ul,
.solv-content ol ul,
.solv-content ul ol,
.solv-content ol ol {
  margin-top: 10px;
  margin-bottom: 0;
}
.solv-content li {
  margin-bottom: 10px;
}
.solv-disputes-alert {
  margin-bottom: 10px;
}
.solv-disputes-alert .view-disputes {
  cursor: pointer;
}
.solv-disputes-alert .view-disputes:hover {
  text-decoration: none;
}
.solv-staff-disputes {
  margin: 0;
}
.solv-staff-disputes .hide {
  display: none;
}
.solv-staff-disputes .btn-link {
  color: #e91e63;
}
.solv-staff-disputes .btn-link:hover {
  color: #c1134e !important;
}
.solv-form .mcq-form {
  float: left;
  width: 100%;
  margin-top: 0;
}
.solv-form .fields input {
  display: block;
  padding: 0 8px;
}
.solv-form .fields input[disabled] {
  background: #f7f7f7;
  border-color: #d8d8d8;
  color: #d8d8d8;
  box-shadow: none;
}
.solv-form .errorlist {
  margin: -8px 0 8px 0;
}
.solv-form .btn {
  width: 100%;
}
.solv-form .btn-submit {
  margin-top: 16px;
  font-size: 13px;
  line-height: 1.9em;
}
.mcq-form label.chose {
  cursor: default;
  border-color: #c1134e;
  color: #e91e63;
}
.mcq-form .errorlist {
  margin-top: 0;
}
.mcq-edit-form {
  width: 100%;
  padding: 0 0 24px 0;
}
.mcq-edit-form .type-select input {
  display: none;
}
.mcq-edit-form input {
  width: 100%;
  height: 30px;
}
.mcq-edit-form textarea {
  width: 100%;
  height: 60px;
  margin-bottom: 16px;
}
.mcq-edit-form p {
  margin: 0 !important;
}
.mcq-edit-form footer {
  margin-top: 16px;
}
.solv-simple-solution.solv-solutions {
  padding-left: 24px;
  padding-right: 24px;
  margin-left: -22px;
  margin-right: -22px;
}
@media screen and (min-width: 700px) and (max-width: 1200px) {
  .solv-simple-solution.solv-solutions {
    padding: 16px 16px 0;
    margin: 8px -14px;
  }
}
.solv-simple-solution .solution-header {
  padding: 0 !important;
  margin-bottom: 24px;
}
.solv-simple-solution .solution-body li {
  /* Matching spacing here to .solv-content li. This keeps LaTeX well spaced. */
  margin-bottom: 10px;
}
.solv-simple-solution h2,
.solv-simple-solution .answer,
.solv-simple-solution .content p:last-child {
  margin-bottom: 0;
}
.solv-simple-solution .answer .katex-display,
.solv-simple-solution .answer .katex-display > .katex,
.solv-simple-solution .answer .katex-display > .katex > .katex-html {
  display: inline;
}
.solv-solutions,
.solv-disputes {
  display: none;
  position: relative;
  padding: 24px 16px 0;
  margin: 16px -16px;
  border-top: 1px solid #d4d4d4;
  box-sizing: content-box;
}
.solv-confirm-box .modal-body {
  margin-top: 0;
}
.solv-confirm-box .btn {
  width: 46%;
  margin-right: 8%;
  float: left;
}
.solv-confirm-box .btn.btn-confirm {
  margin-right: 0;
}
.solv-confirm-box p {
  text-align: center;
}
.solv-solvers {
  line-height: 16px;
}
.solv-solvers.expanded .btn-expand {
  display: none;
}
.solv-solvers.expanded .btn-collapse {
  display: inline;
}
.solv-solvers.expanded ul {
  margin-left: 0;
}
.solv-solvers.hidden button {
  display: none;
}
.solv-solvers button {
  position: absolute;
  top: 16px;
  left: auto;
  margin-left: 44px;
  z-index: 1;
}
.solv-solvers .btn-collapse {
  display: none;
}
.solv-solvers ul {
  float: left;
  margin-bottom: 0;
  margin-left: -380px;
  -webkit-transition: margin-left 250ms ease-out;
  transition: margin-left 250ms ease-out;
  will-change: margin-left;
}
.solv-solvers li {
  float: right;
  display: inline;
  margin-right: 8px;
}
.solv-solution-stats {
  padding: 16px;
  margin-bottom: 16px;
  background: #f7f7f7;
  text-align: center;
  color: #919191;
}
.daum-link {
  display: none;
}
body.chrome .daum-link {
  display: inline-block;
}
.solv-details .problem-nux-btn {
  width: 100%;
}
.problem-modal-container {
  clear: both;
}
.problem-modal-container.left .wiki-problem {
  float: left;
  margin-right: 24px;
}
.problem-modal-container.right .wiki-problem {
  float: right;
  margin-left: 24px;
}
.problem-modal-container.left:before,
.problem-modal-container.right:before {
  display: none;
}
.problem-modal-container .wiki-problem {
  max-width: 100%;
}
.problem-modal-container .wiki-problem img {
  max-width: 100%;
}
.wiki-problem {
  margin-left: auto;
  margin-right: auto;
}
.wiki-problem .question-container {
  overflow: hidden;
}
@media screen and (min-width: 700px) and (max-width: 1200px) {
  .wiki-problem .question-container {
    padding-right: 16px;
    margin-right: 224px;
  }
  .wiki-problem .answer-container {
    width: 224px;
  }
  .wiki-problem img,
  .wiki-problem .image-caption.left img,
  .wiki-problem .image-caption.right img {
    max-width: 384px;
  }
}
.btn-mcq {
  position: relative;
  float: left;
  clear: left;
  width: 100%;
  min-height: 50px;
  padding: 16px 0 16px 44px;
  border: 0;
  background: none;
  color: #333;
  line-height: 1.2em;
  text-align: left;
}
.btn-mcq:before,
.btn-mcq:after {
  content: '';
  position: absolute;
  top: 50%;
  border-radius: 50%;
  z-index: 1;
}
.btn-mcq:before {
  display: block;
  left: 0;
  width: 28px;
  height: 28px;
  margin-top: -14px;
  border: 2px solid #777;
  background: #f7f7f7;
  box-sizing: border-box;
}
.btn-mcq:after {
  display: none;
  left: 5px;
  width: 18px;
  height: 18px;
  margin-top: -9px;
  background: none;
}
.btn-mcq:active,
.btn-mcq:focus,
.btn-mcq:hover {
  box-shadow: none;
  color: #333 !important;
}
.btn-mcq:not(.disabled):active:before,
.btn-mcq:not(.disabled):focus:before,
body.no-touch .btn-mcq:not(.disabled):hover:before {
  border: 3px solid #777;
  background: #f7f7f7;
}
.btn-mcq:not(.disabled):active:after,
.btn-mcq:not(.disabled):focus:after,
body.no-touch .btn-mcq:not(.disabled):hover:after {
  display: block;
  background: #777;
}
.btn-mcq:not(.disabled):active .bg,
.btn-mcq:not(.disabled):focus .bg,
body.no-touch .btn-mcq:not(.disabled):hover .bg {
  background: #f0f0f0;
}
.btn-mcq.disabled {
  opacity: 1;
}
.btn-mcq.dim:before {
  background: #f7f7f7;
}
.btn-mcq.active:before,
.btn-mcq.incorrect:before {
  background: #f7f7f7;
  border-width: 3px;
  border-color: #333 !important;
}
.btn-mcq.active:after,
.btn-mcq.incorrect:after {
  display: block;
  background: #333 !important;
}
.btn-mcq.correct.active:before {
  background: transparent;
}
.btn-mcq.correct:before {
  border: 3px solid #333;
  background: #333;
}
.btn-mcq.correct .bg {
  border: 1px solid #d8d8d8;
  box-shadow: 0 1px 8px -4px #333;
  background: #fff;
  opacity: 0.9;
}
.btn-mcq.correct .bg:before {
  display: block;
}
.btn-mcq .katex-display,
.btn-mcq .katex-display > .katex {
  padding: 0;
  margin: 1px !important;
  text-align: left !important;
}
.btn-mcq a {
  color: #333;
}
.btn-mcq .bg {
  position: absolute;
  left: -36px;
  right: 0;
  top: 2px;
  bottom: 2px;
}
.btn-mcq .bg:before {
  content: '';
  position: absolute;
  left: 18px;
  top: 50%;
  margin: -6.5px 0 -8px;
  background-image: url(/site_media/sprite-4bc4961b973/build/sprites/css-sprite-solvables.png);
  background-position: -207px -185.5px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: none;
  width: 16px;
  height: 13px;
}
@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx) {
  .btn-mcq .bg:before {
    background-image: url(/site_media/sprite-4bc4961b973/build/sprites/css-sprite-solvables-x2.png);
    background-size: 335px 245px;
  }
}
.btn-mcq > span {
  position: relative;
}
.btn-mcq code {
  display: inline-block;
  padding-top: 0;
  padding-bottom: 0;
  margin: 2px 0;
  line-height: 1.3em;
  word-break: break-word;
}
.btn-multi-select:before,
.btn-multi-select:after {
  border-radius: 0;
}
.disc-post .body .deleted {
  float: left;
  clear: left;
  margin-top: 6px;
  color: #999;
  font-size: 0.9em;
  font-style: oblique;
}
body.disc-page {
  background: #fff;
}
#disc-logged-out {
  width: 100%;
  margin-bottom: 30px;
}
#disc-logged-out .bsharing-container {
  float: right;
}
#disc-page {
  margin-top: 24px;
}
.newdisc-post {
  position: relative;
  width: 100%;
  overflow: visible;
  overflow-x: auto;
  overflow-y: hidden;
}
.newdisc-post .edit-title-form {
  padding: 0 0 3px 0;
}
.newdisc-post .edit-title-form form,
.newdisc-post .edit-title-form p {
  display: inline;
}
.newdisc-post .edit-title-form label {
  display: none;
}
.newdisc-post .edit-title-form input[type='text'] {
  box-sizing: content-box;
  width: 320px;
  height: 23px;
  padding: 0 10px;
  margin: 0;
  font-size: 14px;
}
.newdisc-post .edit-title-form form .btn,
.newdisc-post .edit-title-form .cancel-edit-link {
  height: 25px;
  line-height: 18px;
  padding-left: 12px;
  padding-right: 12px;
  margin: 0 0 0 5px;
}
.newdisc-post .edit-title-form form .btn.dim,
.newdisc-post .edit-title-form .cancel-edit-link.dim,
.newdisc-post .edit-title-form form .btn[disabled],
.newdisc-post .edit-title-form .cancel-edit-link[disabled] {
  opacity: 0.5;
}
.newdisc-post .edit-title-form form .btn:active,
.newdisc-post .edit-title-form .cancel-edit-link:active {
  border: 0;
}
.newdisc-post .edit-title-link {
  position: relative;
  top: 1px;
  margin: 0 5px;
  cursor: pointer;
  background-position: -244px -218px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: inline-block;
  width: 15px;
  height: 13px;
}
.newdisc-post .edit-title-link:hover {
  background-position: -260px -202px;
}
.newdisc-post .body {
  float: left;
  width: 100%;
}
.newdisc-post .body .content {
  margin: 24px 0;
}
.newdisc-post .body .content h1,
.newdisc-post .body .content h2,
.newdisc-post .body .content h3,
.newdisc-post .body .content h4,
.newdisc-post .body .content h5,
.newdisc-post .body .content h6 {
  margin-bottom: 16px;
  font-weight: 400;
}
.newdisc-post .body h2 {
  padding-bottom: 4px;
  margin-bottom: 6px;
  border-bottom: 1px solid #333;
}
.newdisc-post .body p {
  margin: 0 0 15px;
}
.newdisc-post .body img {
  max-width: 250px;
  margin-bottom: 15px;
}
.newdisc-post .body ul,
.newdisc-post .body ol {
  margin-left: 40px;
}
.newdisc-post .tags {
  margin-bottom: 24px;
}
.newdisc-post .tags a {
  margin-right: 5px;
}
.newdisc-post .details {
  float: left;
  clear: left;
}
.newdisc-post .edit-form {
  display: none;
}
.newdisc-post .delete-form {
  display: none;
  margin-top: 24px;
  background: #fff;
  border: 1px solid #e91e63;
  color: #333;
}
.newdisc-post .edit-form {
  float: left;
  width: 100%;
  margin: 24px 0;
}
.newdisc-post .edit-form textarea {
  width: 100%;
  min-height: 80px;
  padding: 9px;
  margin: 0 0 16px 0;
}
.newdisc-post .edit-form .btn {
  float: left;
  margin-right: 5px;
}
.newdisc-post .edit-form .img-upload-btn {
  display: inline-block;
  width: 200px;
}
.newdisc-post .edit-form .qq-upload-button {
  width: auto;
  max-width: 100%;
}
.newdisc-post .edit-form .qq-upload-button:active {
  border-bottom-width: 2px;
}
.newdisc-post .edit-form .qq-upload-drop-area {
  padding: 2px 0 3px 0;
}
.newdisc-post .edit-form .formatting-guide {
  float: left;
  clear: left;
  font-size: 0.85em;
}
.newdisc-post .edit-form .comment-formatting {
  float: left;
  clear: left;
  margin-top: 15px;
}
.newdisc-post .edit-form .errorlist {
  margin: -12px 0 16px 0;
}
.newdisc-post .delete-form h4 {
  margin-bottom: 10px;
}
.newdisc-post .delete-form form {
  margin: 0;
}
.newdisc-post .delete-form a {
  color: #333;
  text-decoration: none;
}
.newdisc-post .delete-form .btn {
  margin: 5px 5px 0 0;
}
.newdisc-post .codex-expand-toggle {
  display: none !important;
}
.newdisc-post .body .codex-output h2 {
  padding: 0;
  margin-bottom: 8px;
  border-bottom: 0;
  font-weight: bold;
}
.newdisc-post .body .codex-output ul,
.newdisc-post .body .codex-output ol {
  margin: 0;
}
.newdisc-post.editing {
  overflow: visible;
  padding-bottom: 20px;
}
.newdisc-post.editing .edit-form {
  display: block;
  overflow: visible;
}
.newdisc-post.editing .content,
.newdisc-post.editing .tags,
.newdisc-post.editing .disc-mod-btns,
.newdisc-post.editing .preview.desc,
.newdisc-post.editing .edit-form .edit {
  display: none;
}
.newdisc-post.previewing .edit-form,
.newdisc-post.previewing .edit-form .btn {
  display: block;
}
.newdisc-post.previewing .tags,
.newdisc-post.previewing .disc-mod-btns,
.newdisc-post.previewing .content,
.newdisc-post.previewing .form,
.newdisc-post.previewing .edit-form .btn.preview,
.newdisc-post.previewing .edit-form .img-upload-btn,
.newdisc-post.previewing .formatting-guide {
  display: none;
}
.newdisc-post.deleting .content,
.newdisc-post.deleting .tags,
.newdisc-post.deleting .disc-mod-btns {
  display: none;
}
.newdisc-post.deleting .delete-form {
  display: block;
}
.disc-mod-btns {
  padding-bottom: 8px;
  font-size: 0;
}
.disc-mod-btns .btn {
  margin: 0 4px 4px 0;
}
.disc-mod-btns form {
  display: inline-block;
  margin-bottom: 0;
}
.disc-author {
  width: 65%;
  float: left;
}
.disc-author .avatar {
  margin: 0 16px 0 0;
  float: left;
}
.disc-author .avatar img {
  width: 30px;
  height: 30px;
  border-radius: 50%;
}
.disc-author p {
  padding: 1px 0 0 0;
  margin: 0;
  font-size: 14px;
  line-height: 1.3em;
}
.disc-author .btn-save-wrapper {
  display: inline-block;
  margin-left: 8px;
}
.disc-toolbar {
  padding: 16px 0 12px 0;
  border-bottom: 1px solid #777;
}
.disc-toolbar .sharing-dd .dropdown-toggle span {
  color: #333;
}
.newpost-subscr {
  margin: 0;
}
.comments-header {
  padding: 16px 0 8px 0;
  border-bottom: 1px solid #777;
}
.comments-header h2,
.comments-header #subscr-placeholder {
  float: left;
}
.comments-header h2 {
  margin: 0;
  position: relative;
  top: -6px;
}
body.active .comments-header {
  padding-top: 40px;
}
#subscr-placeholder {
  margin-left: 24px;
}
.comments-sort {
  float: right;
}
.comments-sort .btn-filter {
  height: auto;
  line-height: 1.6em;
  margin-left: 16px;
}
.comments-sort p {
  float: left;
  margin-bottom: 0;
}
.disc-subscription .highlight {
  -webkit-animation: anim-wiggle 300ms infinite;
  animation: anim-wiggle 300ms infinite;
}
.disc-comments-list {
  margin-top: 32px;
}
.disc-comments-list .top-level-comment-form {
  padding: 0;
}
.disc-comments-list .top-level-comment-form .comment-form textarea,
.disc-comments-list .top-level-comment-form.focused .comment-form textarea {
  width: 100%;
  height: 80px;
}
.disc-comments-list .top-level-comment-form .comment-form {
  padding: 0;
}
.disc-comments-list .top-level-comment-form .comment-form-buttons {
  width: 100%;
  padding-top: 16px;
  opacity: 1;
  position: static;
}
.disc-comments-list .top-level-comment-form .comment-form-buttons .btn {
  float: right;
  width: 176px;
}
.disc-comments-list .top-level-comment-form .comment-form-buttons .formatting-guide-link {
  float: left;
  color: #777;
}
.disc-comments-list .top-level-comment-form .comment-form-buttons .formatting-guide-link:hover {
  color: #0277bd;
}
.disc-comments-list .level-0 > .cmmnt:first-child {
  border-top: 0;
}
.disc-comments-list .no-comments {
  padding-left: 48px;
  color: #bbb;
}
.disc-comments-list .no-comments p {
  padding: 16px 0;
  margin: 0;
}
.disc-master-drawer .comment-formatting {
  width: 200px !important;
}
.disc-content .comment-formatting {
  float: left;
  clear: left;
  width: 654px;
  margin: 0 0 20px 46px;
}
.disc-content .comment-formatting .small {
  display: block;
  width: 100%;
  color: #999;
}
.disc-comments {
  position: relative;
  margin-top: 0;
}
.disc-comments .comment-formatting {
  margin: 15px 0 20px 40px;
}
.disc-comments textarea {
  background: transparent;
}
.disc-flatpage {
  width: 80%;
}
.disc-flatpage h2 {
  font-size: 1.1em;
  line-height: 1.3em;
}
.disc-flatpage ul {
  margin: 0 0 20px 18px;
}
.disc-flatpage li {
  margin: 5px 0;
  font-size: 1.1em;
}
.disc-flatpage .notice {
  float: left;
  clear: left;
  width: 100%;
  margin: 10px 0 30px 0;
  font-weight: bold;
  border-radius: 3px;
}
.disc-flatpage .notice p {
  margin: 0;
  padding: 15px 25px;
}
#flatpage .disc-flatpage h1 {
  font-size: 2.3em;
}
#flatpage .disc-flatpage .notice p {
  font-size: 1em;
}
.comment-subscr {
  display: inline;
}
.comment-subscr button {
  padding: 0;
  border: 0;
  background: none;
  font-size: 1em;
  color: #0277bd;
  outline: none;
}
.comment-subscr button:hover {
  color: #039be5;
}
.tag-list-title {
  margin: -10px 0 15px 0;
  font-size: 1.5em;
}
.tag-list-title .tag-subscr {
  display: inline;
}
.tag-list-title button {
  margin-left: 5px;
  padding: 0;
  border: 0;
  background: none;
  color: #0277bd;
  vertical-align: baseline;
}
.tag-list-title button:hover {
  color: #039be5;
}
.nf-profile #setlist-create-btn {
  width: 148px;
  margin-top: 1px;
}
.nf-setlist .nf-setlist-item {
  display: table;
  width: 100%;
  border-bottom: 1px solid #bbb;
}
.nf-setlist .nf-setlist-item .content {
  position: relative;
  display: table-cell;
  vertical-align: middle;
  width: auto;
  padding: 16px 0 16px 25px;
}
.nf-setlist .nf-setlist-item .css-sprite-newsfeed {
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -7.5px;
  background-position: 0px -103px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 10px;
  height: 15px;
}
.nf-setlist .nf-setlist-item .content-author,
.nf-setlist .nf-setlist-item .content-classroom {
  display: table-cell;
  vertical-align: middle;
  width: auto;
  padding-left: 20px;
  text-align: right;
  color: #777;
}
.nf-setlist .nf-setlist-item .content-author a,
.nf-setlist .nf-setlist-item .content-classroom a {
  color: #777;
}
.nf-setlist .nf-setlist-item h4 {
  margin-bottom: 0;
}
body.no-touch .nf-setlist .nf-feed-item-wrapper:hover .nf-setlist-item {
  background-color: #f0f0f0;
  background: transparent -webkit-linear-gradient(left, #fbfbfb, #f0f0f0 10%, #f0f0f0 90%, #fbfbfb 100%);
  background: transparent linear-gradient(left, #fbfbfb, #f0f0f0 10%, #f0f0f0 90%, #fbfbfb 100%);
  background-repeat: no-repeat;
}
body.no-touch .nf-setlist .nf-feed-item-wrapper:hover .nf-setlist-item .css-sprite-newsfeed {
  background-position: -106px -56px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 10px;
  height: 15px;
}
.set-create-modal form {
  padding: 0 5%;
}
.set-create-modal input {
  position: relative;
  width: 100%;
  margin-bottom: 0;
  font-size: 16px;
}
.nf-setlist-empty {
  float: left;
  clear: left;
  width: 100%;
  margin-top: 16px;
}
/* BASICS */
.CodeMirror {
  /* Set height, width, borders, and global font properties here */
  font-family: monospace;
  height: 300px;
  color: black;
  direction: ltr;
}
/* PADDING */
.CodeMirror-lines {
  padding: 4px 0;
  /* Vertical padding around content */
}
.CodeMirror pre {
  padding: 0 4px;
  /* Horizontal padding of content */
}
.CodeMirror-scrollbar-filler,
.CodeMirror-gutter-filler {
  background-color: white;
  /* The little square between H and V scrollbars */
}
/* GUTTER */
.CodeMirror-gutters {
  border-right: 1px solid #ddd;
  background-color: #f7f7f7;
  white-space: nowrap;
}
.CodeMirror-linenumber {
  padding: 0 3px 0 5px;
  min-width: 20px;
  text-align: right;
  color: #999;
  white-space: nowrap;
}
.CodeMirror-guttermarker {
  color: black;
}
.CodeMirror-guttermarker-subtle {
  color: #999;
}
/* CURSOR */
.CodeMirror-cursor {
  border-left: 1px solid black;
  border-right: none;
  width: 0;
}
/* Shown when moving in bi-directional text */
.CodeMirror div.CodeMirror-secondarycursor {
  border-left: 1px solid silver;
}
.cm-fat-cursor .CodeMirror-cursor {
  width: auto;
  border: 0 !important;
  background: #7e7;
}
.cm-fat-cursor div.CodeMirror-cursors {
  z-index: 1;
}
.cm-fat-cursor-mark {
  background-color: rgba(20, 255, 20, 0.5);
  -webkit-animation: blink 1.06s steps(1) infinite;
  -moz-animation: blink 1.06s steps(1) infinite;
  animation: blink 1.06s steps(1) infinite;
}
.cm-animate-fat-cursor {
  width: auto;
  border: 0;
  -webkit-animation: blink 1.06s steps(1) infinite;
  -moz-animation: blink 1.06s steps(1) infinite;
  animation: blink 1.06s steps(1) infinite;
  background-color: #7e7;
}
@-moz-keyframes blink {
  50% {
    background-color: transparent;
  }
}
@-webkit-keyframes blink {
  50% {
    background-color: transparent;
  }
}
@keyframes blink {
  50% {
    background-color: transparent;
  }
}
/* Can style cursor different in overwrite (non-insert) mode */
.cm-tab {
  display: inline-block;
  text-decoration: inherit;
}
.CodeMirror-rulers {
  position: absolute;
  left: 0;
  right: 0;
  top: -50px;
  bottom: -20px;
  overflow: hidden;
}
.CodeMirror-ruler {
  border-left: 1px solid #ccc;
  top: 0;
  bottom: 0;
  position: absolute;
}
/* DEFAULT THEME */
.cm-s-default .cm-header {
  color: blue;
}
.cm-s-default .cm-quote {
  color: #090;
}
.cm-negative {
  color: #d44;
}
.cm-positive {
  color: #292;
}
.cm-header,
.cm-strong {
  font-weight: bold;
}
.cm-em {
  font-style: italic;
}
.cm-link {
  text-decoration: underline;
}
.cm-strikethrough {
  text-decoration: line-through;
}
.cm-s-default .cm-keyword {
  color: #708;
}
.cm-s-default .cm-atom {
  color: #219;
}
.cm-s-default .cm-number {
  color: #164;
}
.cm-s-default .cm-def {
  color: #00f;
}
.cm-s-default .cm-variable-2 {
  color: #05a;
}
.cm-s-default .cm-variable-3,
.cm-s-default .cm-type {
  color: #085;
}
.cm-s-default .cm-comment {
  color: #a50;
}
.cm-s-default .cm-string {
  color: #a11;
}
.cm-s-default .cm-string-2 {
  color: #f50;
}
.cm-s-default .cm-meta {
  color: #555;
}
.cm-s-default .cm-qualifier {
  color: #555;
}
.cm-s-default .cm-builtin {
  color: #30a;
}
.cm-s-default .cm-bracket {
  color: #997;
}
.cm-s-default .cm-tag {
  color: #170;
}
.cm-s-default .cm-attribute {
  color: #00c;
}
.cm-s-default .cm-hr {
  color: #999;
}
.cm-s-default .cm-link {
  color: #00c;
}
.cm-s-default .cm-error {
  color: #f00;
}
.cm-invalidchar {
  color: #f00;
}
.CodeMirror-composing {
  border-bottom: 2px solid;
}
/* Default styles for common addons */
div.CodeMirror span.CodeMirror-matchingbracket {
  color: #0b0;
}
div.CodeMirror span.CodeMirror-nonmatchingbracket {
  color: #a22;
}
.CodeMirror-matchingtag {
  background: rgba(255, 150, 0, 0.3);
}
.CodeMirror-activeline-background {
  background: #e8f2ff;
}
/* STOP */
/* The rest of this file contains styles related to the mechanics of
   the editor. You probably shouldn't touch them. */
.CodeMirror {
  position: relative;
  overflow: hidden;
  background: white;
}
.CodeMirror-scroll {
  overflow: scroll !important;
  /* Things will break if this is overridden */
  /* 30px is the magic margin used to hide the element's real scrollbars */
  /* See overflow: hidden in .CodeMirror */
  margin-bottom: -30px;
  margin-right: -30px;
  padding-bottom: 30px;
  height: 100%;
  outline: none;
  /* Prevent dragging from highlighting the element */
  position: relative;
}
.CodeMirror-sizer {
  position: relative;
  border-right: 30px solid transparent;
}
/* The fake, visible scrollbars. Used to force redraw during scrolling
   before actual scrolling happens, thus preventing shaking and
   flickering artifacts. */
.CodeMirror-vscrollbar,
.CodeMirror-hscrollbar,
.CodeMirror-scrollbar-filler,
.CodeMirror-gutter-filler {
  position: absolute;
  z-index: 6;
  display: none;
}
.CodeMirror-vscrollbar {
  right: 0;
  top: 0;
  overflow-x: hidden;
  overflow-y: scroll;
}
.CodeMirror-hscrollbar {
  bottom: 0;
  left: 0;
  overflow-y: hidden;
  overflow-x: scroll;
}
.CodeMirror-scrollbar-filler {
  right: 0;
  bottom: 0;
}
.CodeMirror-gutter-filler {
  left: 0;
  bottom: 0;
}
.CodeMirror-gutters {
  position: absolute;
  left: 0;
  top: 0;
  min-height: 100%;
  z-index: 3;
}
.CodeMirror-gutter {
  white-space: normal;
  height: 100%;
  display: inline-block;
  vertical-align: top;
  margin-bottom: -30px;
}
.CodeMirror-gutter-wrapper {
  position: absolute;
  z-index: 4;
  background: none !important;
  border: none !important;
}
.CodeMirror-gutter-background {
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: 4;
}
.CodeMirror-gutter-elt {
  position: absolute;
  cursor: default;
  z-index: 4;
}
.CodeMirror-gutter-wrapper ::selection {
  background-color: transparent;
}
.CodeMirror-gutter-wrapper ::-moz-selection {
  background-color: transparent;
}
.CodeMirror-lines {
  cursor: text;
  min-height: 1px;
  /* prevents collapsing before first draw */
}
.CodeMirror pre {
  /* Reset some styles that the rest of the page might have set */
  -moz-border-radius: 0;
  -webkit-border-radius: 0;
  border-radius: 0;
  border-width: 0;
  background: transparent;
  font-family: inherit;
  font-size: inherit;
  margin: 0;
  white-space: pre;
  word-wrap: normal;
  line-height: inherit;
  color: inherit;
  z-index: 2;
  position: relative;
  overflow: visible;
  -webkit-tap-highlight-color: transparent;
  -webkit-font-variant-ligatures: contextual;
  font-variant-ligatures: contextual;
}
.CodeMirror-wrap pre {
  word-wrap: break-word;
  white-space: pre-wrap;
  word-break: normal;
}
.CodeMirror-linebackground {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  z-index: 0;
}
.CodeMirror-linewidget {
  position: relative;
  z-index: 2;
  overflow: auto;
}
.CodeMirror-rtl pre {
  direction: rtl;
}
.CodeMirror-code {
  outline: none;
}
/* Force content-box sizing for the elements where we expect it */
.CodeMirror-scroll,
.CodeMirror-sizer,
.CodeMirror-gutter,
.CodeMirror-gutters,
.CodeMirror-linenumber {
  -moz-box-sizing: content-box;
  box-sizing: content-box;
}
.CodeMirror-measure {
  position: absolute;
  width: 100%;
  height: 0;
  overflow: hidden;
  visibility: hidden;
}
.CodeMirror-cursor {
  position: absolute;
  pointer-events: none;
}
.CodeMirror-measure pre {
  position: static;
}
div.CodeMirror-cursors {
  visibility: hidden;
  position: relative;
  z-index: 3;
}
div.CodeMirror-dragcursors {
  visibility: visible;
}
.CodeMirror-focused div.CodeMirror-cursors {
  visibility: visible;
}
.CodeMirror-selected {
  background: #d9d9d9;
}
.CodeMirror-focused .CodeMirror-selected {
  background: #d7d4f0;
}
.CodeMirror-crosshair {
  cursor: crosshair;
}
.CodeMirror-line::selection,
.CodeMirror-line > span::selection,
.CodeMirror-line > span > span::selection {
  background: #d7d4f0;
}
.CodeMirror-line::-moz-selection,
.CodeMirror-line > span::-moz-selection,
.CodeMirror-line > span > span::-moz-selection {
  background: #d7d4f0;
}
.cm-searching {
  background-color: #ffa;
  background-color: rgba(255, 255, 0, 0.4);
}
/* Used to force a border model for a node */
.cm-force-border {
  padding-right: 0.1px;
}
@media print {
  /* Hide the cursor when printing */
  .CodeMirror div.CodeMirror-cursors {
    visibility: hidden;
  }
}
/* See issue #2901 */
.cm-tab-wrap-hack:after {
  content: '';
}
/* Help users use markselection to safely style text background */
span.CodeMirror-selectedtext {
  background: none;
}
.cm-s-clouds.CodeMirror {
  background-color: #fff;
  color: #000;
}
.cm-s-clouds .CodeMirror-gutters {
  background: #ebebeb;
}
.CodeMirror-linenumber {
  color: #333;
}
.cm-s-clouds .cm-quote {
  color: #090;
}
.cm-s-clouds .cm-negative {
  color: #d44;
}
.cm-s-clouds .cm-positive {
  color: #292;
}
.cm-s-clouds .cm-atom {
  color: #219;
}
.cm-s-clouds .cm-attribute {
  color: #00c;
}
.cm-s-clouds .cm-bracket {
  color: #997;
}
.cm-s-clouds .cm-comment {
  color: #bcc8ba;
}
.cm-s-clouds .cm-em {
  font-style: italic;
}
.cm-s-clouds .cm-error {
  color: #f00;
}
.cm-s-clouds .cm-hr {
  color: #999;
}
.cm-s-clouds .cm-invalidchar {
  color: #f00;
}
.cm-s-clouds .cm-keyword {
  color: #af956f;
}
.cm-s-clouds .cm-link {
  color: #00c;
  text-decoration: underline;
}
.cm-s-clouds .cm-meta {
  color: #af956f;
}
.cm-s-clouds .cm-negative {
  color: #d44;
}
.cm-s-clouds .cm-positive {
  color: #292;
}
.cm-s-clouds .cm-qualifier {
  color: #555;
}
.cm-s-clouds .cm-strikethrough {
  text-decoration: line-through;
}
.cm-s-clouds .cm-string,
.cm-s-clouds .cm-string-2 {
  color: #5d90cd;
}
.cm-s-clouds .cm-strong {
  font-weight: bold;
}
.cm-s-clouds .cm-tag {
  color: #170;
}
.cm-s-clouds .cm-operator {
  color: #484848;
}
.cm-s-clouds .cm-number {
  color: #46a609;
}
.cm-s-clouds .cm-accessTypes,
.cm-s-clouds .cm-compareTypes {
  color: #27408b;
}
.cm-s-clouds .cm-cmipVerbs {
  color: #8b2252;
}
.cm-s-clouds .cm-modifier {
  color: #d2691e;
}
.cm-s-clouds .cm-status {
  color: #8b4545;
}
.cm-s-clouds .cm-storage {
  color: #a020f0;
}
.cm-s-clouds .cm-tags {
  color: #006400;
}
.cm-s-clouds .cm-booleanConsts,
.cm-s-clouds .cm-otherConsts,
.cm-s-clouds .cm-verdictConsts {
  color: #af956f;
}
.cm-s-clouds .cm-configOps,
.cm-s-clouds .cm-functionOps,
.cm-s-clouds .cm-portOps,
.cm-s-clouds .cm-sutOps,
.cm-s-clouds .cm-timerOps,
.cm-s-clouds .cm-verdictOps {
  color: #0000ff;
}
.cm-s-clouds .cm-preprocessor,
.cm-s-clouds .cm-templateMatch,
.cm-s-clouds .cm-ttcn3Macros {
  color: #27408b;
}
.cm-s-clouds .cm-types {
  color: #c52727;
}
.cm-s-clouds .cm-visibilityModifiers {
  font-weight: bold;
}
body.codex-notes-active .codex-container {
  z-index: 2;
}
.codex-editor .codex-note-btn {
  left: auto !important;
  right: 0;
  padding: 0;
  margin-top: -18px;
  border: 1px solid #d4d4d4;
  border-radius: 4px;
  font-size: 13px;
  line-height: 100%;
  z-index: 6;
}
.codex-editor .codex-note-btn.btn-accent {
  border: 0;
}
.codex-note-edit-modal {
  padding: 24px;
  border-radius: 10px;
}
.codex-note-edit-modal h3 {
  font-size: 28px;
  font-weight: bold;
}
.codex-note-edit-modal label {
  font-weight: bold;
}
.codex-note-edit-modal fieldset {
  display: block;
  float: left;
  clear: left;
  width: 100%;
  margin: 0;
  margin-bottom: 24px;
}
.codex-note-edit-modal fieldset.multi div {
  float: left;
  width: 120px;
  margin-right: 24px;
}
.codex-note-edit-modal textarea {
  width: 100%;
  height: 130px;
  margin: 0;
  resize: vertical;
}
.codex-note-edit-modal input {
  margin: 0;
}
.codex-note-edit-modal input:invalid {
  border-color: #e91e63;
}
.codex-note-edit-modal input[type='number'] {
  width: 60px;
}
.codex-note-edit-modal input[type='checkbox'] {
  margin-right: 8px;
}
.codex-note-edit-modal input[name='show_on_solvable_id'] {
  width: 120px;
  appearance: none;
}
.codex-note-edit-modal footer {
  margin-top: 24px;
}
.codex-note-edit-modal footer .btn {
  float: left;
  margin-right: 16px;
}
.codex-note-edit-modal footer .btn:first-child {
  padding-left: 48px;
  padding-right: 48px;
}
.codex-note-edit-modal footer .btn-delete {
  float: right;
  margin-top: 6px;
  color: #e91e63;
}
.codex-note-edit-modal footer .btn-delete:hover {
  color: #ca1452;
}
.codex-line-highlight {
  display: block;
  left: 0 !important;
  width: 100%;
  border: 1px solid #e5b100;
  border-width: 0 1px;
}
.codex-line-highlight.top {
  border-top-width: 1px;
}
.codex-line-highlight.bottom {
  border-bottom-width: 1px;
}
.codex-admin-notes input[type='checkbox'] {
  margin-right: 2px;
}
.codex-admin-notes .codex-note-preview-btn {
  float: right;
  margin: 0;
}
.codex-notes-intro {
  position: absolute;
  display: flex;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  align-items: center;
  justify-content: center;
  border-radius: 4px;
  background: rgba(51, 51, 51, 0.5);
  text-align: center;
  opacity: 0;
  z-index: 6;
  -webkit-transition: opacity 100ms linear;
  transition: opacity 100ms linear;
}
.codex-notes-intro.hide {
  display: none;
}
.codex-notes-intro.in {
  opacity: 1;
}
.codex-notes-intro > div {
  width: 476px;
  padding: 24px 72px;
  border-radius: 10px;
  background: #fff;
}
.codex-notes-intro h4 {
  font-size: 22px;
  font-weight: bold;
  font-style: normal !important;
}
.codex-notes-intro .btn {
  float: none;
  margin: 32px 0 0;
  padding: 2px 48px;
  border: 1px solid #039be5;
  background: #fff;
  color: #039be5;
}
.codex-notes-intro .btn:hover {
  border-color: #0277bd;
  color: #0277bd;
}
.codex-notes {
  position: absolute;
  left: 100%;
  width: 260px;
  opacity: 0;
  -webkit-transition: opacity 100ms linear;
  transition: opacity 100ms linear;
}
.codex-notes.in {
  opacity: 1;
}
.codex-notes .note {
  display: none;
  position: absolute;
  width: 100%;
  padding: 8px 16px 32px 16px;
  border-left: 3px solid #e5b100;
  background: #ffde5c;
  overflow: hidden;
  font-size: 13px;
}
.codex-notes .note.active {
  display: block;
}
.codex-notes .note p {
  margin-bottom: 10px;
  line-height: 1.4em;
}
.codex-notes .note code {
  padding: 0;
  border: 0;
  font-size: 13px;
  color: inherit;
  background: transparent;
}
.codex-notes .nav {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 8px;
  text-align: right;
}
.codex-notes .nav .btn {
  float: none;
  margin: -4px 0 0 8px;
  padding: 1px 8px;
  border: 0;
  font-size: 13px;
}
.codex-notes .nav .btn:hover {
  color: #333;
}
.codex-notes .nav .btn span {
  background-position: -90px -58px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: inline-block;
  width: 6px;
  height: 9px;
}
.codex-admin-demphasize table {
  width: 100%;
}
.codex-admin-demphasize th {
  text-align: left;
}
.codex-admin-demphasize tbody tr:hover {
  background: #f7f7f7;
}
.codex-admin-demphasize td {
  padding: 8px 24px 8px 0;
}
.codex-admin-demphasize td.number {
  width: 130px;
}
.codex-admin-demphasize td.checkbox {
  width: 130px;
}
.codex-admin-demphasize td.error {
  font-size: 13px;
  color: #919191;
}
.codex-admin-demphasize td.remove {
  width: 30px;
  padding: 0;
  text-align: left;
}
.codex-admin-demphasize input[type='number'] {
  width: 100%;
  margin: 0;
}
.codex-admin-demphasize input[type='checkbox'] {
  margin: 0;
}
.codex-admin-demphasize .remove-row {
  cursor: pointer;
  background-position: -276px -185px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 14px;
  height: 14px;
}
.codex-admin-demphasize .remove-row:hover {
  opacity: 0.5;
}
.codex-deemphasize-highlight-admin {
  position: absolute;
  left: 0 !important;
  width: 100%;
  border: 1px solid #333;
  border-width: 0 2px;
  background: rgba(51, 51, 51, 0.05);
}
.codex-deemphasize-highlight-admin.prevent-click {
  border-color: #e91e63;
  background: rgba(233, 30, 99, 0.05);
}
.codex-deemphasize-highlight {
  position: absolute;
  left: 0 !important;
  width: 100%;
  background: rgba(247, 247, 247, 0.7);
  z-index: 5;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}
.codex-deemphasize-highlight.hover {
  background: rgba(247, 247, 247, 0.4);
}
.codex-deemphasize-highlight.prevent-click {
  cursor: default;
}
.codex-deemphasize-highlight.prevent-click.hover {
  background: rgba(247, 247, 247, 0.7);
}
.CodeMirror {
  height: auto;
  font: 12px / normal 'Monaco', 'Menlo', 'Ubuntu Mono', 'Consolas', 'source-code-pro', monospace;
  line-height: 1.5em;
}
.CodeMirror-scroll.disabled {
  overflow: hidden !important;
  opacity: 0.5;
}
.codex-page {
  position: relative;
  margin-top: 24px;
  padding: 24px;
  border: 1px solid #d4d4d4;
  border-radius: 4px;
  background: #fff;
}
.codex-nav {
  position: absolute;
  top: 19px;
  right: 24px;
}
.codex-nav a {
  float: right;
  margin-left: 24px;
  font-size: 14px;
}
.resize {
  position: absolute;
  right: 2px;
  bottom: 2px;
  cursor: row-resize;
  background-position: -292px -185px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 7.5px;
  height: 7.5px;
  background-image: url(/site_media/sprite-456ffa33a93/build/sprites/css-sprite-global.png);
}
@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx) {
  .resize {
    background-image: url(/site_media/sprite-456ffa33a93/build/sprites/css-sprite-global-x2.png);
    background-size: 300px 234px;
  }
}
.codex-container {
  position: relative;
  margin-bottom: 24px;
  background: #fff;
  font-size: 15px;
  line-height: 1.6em;
}
.codex-container header {
  height: 49px;
  padding: 11px 16px;
  border: 1px solid #d4d4d4;
  border-bottom-width: 0;
  border-radius: 4px 4px 0 0;
  background: #f7f7f7;
}
.codex-container header span {
  float: left;
  margin: 0 8px 0 0;
}
.codex-container header .lang {
  color: #bbb;
}
.codex-container .codex-editor {
  border: 1px solid #d4d4d4;
  background: #fbfbfb;
}
.codex-container .codex-editor .spinner {
  display: block;
  margin: 72px auto;
}
.codex-container button,
.codex-container select,
.codex-container label {
  float: left;
  width: auto;
  margin: 0 16px 0 0;
  font-size: 14px;
}
.codex-container select {
  height: 26px;
  padding-top: 0;
  padding-bottom: 0;
  border-color: #d4d4d4;
  box-shadow: none;
  line-height: 26px;
  color: #333;
  background-size: 10px auto;
  background-color: #f7f7f7;
}
.codex-container select:hover {
  border-color: #333;
  background-color: #fbfbfb;
}
.codex-container select.pull-right {
  float: right;
  margin: 0 0 0 8px;
}
.codex-container label {
  margin-right: 16px;
  padding-top: 3px;
  font-size: 14px;
  color: #777;
}
.codex-container label select {
  float: none;
  margin: -4px 0 0 2px;
}
.codex-container footer {
  padding: 8px;
  border: 1px solid #d4d4d4;
  border-top-width: 0;
  border-radius: 0 0 0 4px;
  background: #f7f7f7;
  user-select: none;
  -webkit-user-select: none;
}
.codex-container footer button {
  float: right;
  height: 26px;
  margin: 0 0 0 16px;
  padding: 0 24px;
  font-size: 13px;
}
.codex-container footer button.pull-left {
  float: left;
  margin: 0 16px 0 0;
}
.codex-container footer .offline-error {
  display: none;
}
.codex-container .codex-view-original {
  opacity: 1;
  -webkit-transition: opacity 100ms linear;
  transition: opacity 100ms linear;
}
.codex-container .codex-view-original[disabled] {
  opacity: 0;
  cursor: default;
}
.codex-container .codex-view-original.active span {
  display: none;
}
.codex-container .codex-view-original.active .changed {
  display: inline-block;
}
.codex-container .codex-view-original .changed {
  display: none;
}
.codex-container .codex-view-original em {
  float: left;
  margin-right: 6px;
  color: #bbb;
}
.codex-container .codex-show-notes.active span {
  display: none;
}
.codex-container .codex-show-notes.active .show-on-active {
  display: inline;
}
.codex-container .codex-show-notes .show-on-active {
  display: none;
}
.codex-container .admin-links {
  position: relative;
  margin: 8px 0 0;
  font-size: 13px;
  z-index: 1;
}
.codex-container .admin-links + .codex-output {
  margin-top: -20px;
}
.codex-form {
  position: relative;
}
.codex-admin-settings {
  border: 1px solid #d4d4d4;
  border-top: 0;
  padding: 16px;
  background: #fbfbfb;
}
.codex-admin-settings .control-group {
  margin: 0;
}
.codex-admin-settings fieldset {
  float: left;
  width: 60%;
}
.codex-admin-settings fieldset:first-child {
  width: 40%;
}
.codex-admin-settings fieldset:nth-child(3) {
  width: 100%;
  padding-top: 16px;
  margin-top: 16px;
  border-top: 1px solid #e8e8e8;
}
.codex-admin-settings fieldset:nth-child(3) select {
  float: left;
  margin: 2px 0 6px 0;
}
.codex-admin-settings label {
  float: none;
  margin: 0;
  padding: 0;
  color: #333;
  font-size: 15px;
}
.codex-admin-settings input {
  margin: 4px 0 8px;
}
.codex-admin-settings textarea {
  width: 100%;
  height: 500px;
  font-family: Menlo, Monaco, Consolas, 'Courier New', monospace !important;
  font-size: 11px;
}
.codex-admin-settings .help-block {
  float: left;
  clear: left;
  margin: 0;
  font-size: 13px;
  line-height: 1.3em;
  color: #777;
}
.codex-admin-alert {
  margin-bottom: 24px;
  font-size: 14px;
  color: #777;
}
.codex-admin-alert code {
  font-size: 13px;
}
.codex-admin-alert p {
  margin: 0;
}
.codex-admin-alert input {
  height: 1.6em;
  padding: 0 4px;
  border: 1px solid #d4d4d4;
  border-radius: 4px;
  font-family: Menlo, Monaco, Consolas, 'Courier New', monospace;
  color: #777;
  background: #fbfbfb;
  vertical-align: 1px;
  font-size: 14px;
}
.codex-output {
  margin-top: 16px;
}
.codex-output .running {
  background: #fbfbfb;
  padding: 48px 0;
  border-radius: 4px;
}
.codex-output .running .spinner {
  display: block;
  margin: 0 auto;
}
.codex-output h2 {
  margin-bottom: 8px;
  font-size: 15px;
  font-style: normal !important;
  text-align: right;
  color: #899098;
}
.codex-output pre {
  margin: 0;
  padding: 8px;
  font-size: 13px;
  background: #f7f7f7;
}
.codex-output pre + .files {
  margin-top: 16px;
}
.codex-output .files h4 {
  font-size: 15px;
  font-weight: bold;
  font-style: normal !important;
}
.codex-output .files ul {
  margin: 0;
  padding: 8px;
  border: 1px solid #d4d4d4;
  border-radius: 4px;
  background: #fff;
}
.codex-output .files li {
  margin-bottom: 16px;
}
.codex-output .files li:last-child {
  margin: 0;
}
.codex-output .files img {
  max-width: 100%;
  max-height: 900px;
}
.codex-output img[src*='.gif?t='] {
  opacity: 0;
}
.codex-output .super-gif {
  position: relative;
}
.codex-output .super-gif canvas {
  float: left;
}
.codex-output .super-gif .replay-button {
  position: absolute;
  top: 0;
  left: 0;
  margin: 0;
  border: 0;
  background: rgba(0, 0, 0, 0.07);
  opacity: 1;
  transition: opacity 100ms linear;
}
.codex-output .super-gif .replay-button[disabled] {
  opacity: 0;
  cursor: default;
}
.codex-output .super-gif .btn {
  position: absolute;
  top: 8px;
  right: 8px;
}
button.codex-expand-toggle {
  display: block;
  position: absolute;
  top: 24.5px;
  right: 16px;
  width: 27px;
  height: 27px;
  margin: -13.5px 0 0;
  border: 0;
  background: #333;
  border-radius: 50%;
  z-index: 1;
}
button.codex-expand-toggle.active:after {
  margin: -12px 0 0 -11.5px;
  width: 23px;
  height: 24px;
  background-position: -274px -71px;
}
button.codex-expand-toggle:hover {
  background: #777;
}
button.codex-expand-toggle[disabled] {
  background: #919191;
  cursor: default;
}
button.codex-expand-toggle[disabled]:hover {
  background: #919191;
}
button.codex-expand-toggle:after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -8px 0 0 -7.5px;
  background-position: -244px -167px;
  background-repeat: no-repeat;
  overflow: hidden;
  display: block;
  width: 15px;
  height: 16px;
  background-image: url(/site_media/sprite-456ffa33a93/build/sprites/css-sprite-global.png);
}
@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx) {
  button.codex-expand-toggle:after {
    background-image: url(/site_media/sprite-456ffa33a93/build/sprites/css-sprite-global-x2.png);
    background-size: 300px 234px;
  }
}
.codex-container.expanded {
  width: 1176px;
  box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
  z-index: 2;
}
@media screen and (min-width: 700px) and (max-width: 1200px) {
  .codex-container.expanded {
    width: 944px;
  }
}
.codex-container.expanded header {
  padding-right: 59px;
  border-radius: 0;
  border-width: 1px 0 0 0;
}
.codex-container.expanded .codex-editor {
  border-width: 1px 0;
}
.codex-container.expanded footer {
  border-radius: 0;
  border-width: 0 0 1px 0;
}
.codex-container.expanded .codex-output .running {
  border-radius: 0;
}
.codex-container.expanded .codex-output h2 {
  padding: 0 8px;
}
.codex-container.expanded .codex-output pre {
  border-radius: 0;
  border-width: 1px 0;
}
.codex-container.expanded .codex-output .files ul {
  border-width: 1px 0;
  border-radius: 0;
}
.codex-static-code {
  position: relative;
  float: left;
  clear: left;
  width: 100%;
  margin-bottom: 0.8em;
}
.codex-static-code pre,
.codex-static-code p {
  margin: 0;
}
.codex-static-code.expanded {
  width: 1176px;
  box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
  z-index: 2;
}
@media screen and (min-width: 700px) and (max-width: 1200px) {
  .codex-static-code.expanded {
    width: 944px;
  }
}
.codex-static-code.expanded .codex-expand-toggle {
  right: 16px;
}
.codex-static-code.expanded .codehilitetable.has-lang .codehilite code:before {
  margin: 0;
  border-left: 0;
  border-right: 0;
}
.codex-static-code.expanded .codehilitetable.has-lang .linenos {
  padding-left: 0;
  padding-bottom: 0;
}
.codex-static-code.expanded .codehilitetable.has-lang .linenos pre {
  border-left: 0;
}
.codex-static-code.expanded .codehilitetable.has-lang .code {
  padding-left: 0;
  padding-right: 0;
  padding-bottom: 0;
}
.codex-static-code.expanded .codehilitetable.has-lang .code pre {
  border-right: 0;
}
.codex-static-code .codex-expand-toggle {
  top: 21px;
}
.nf-feeditem-modal .codex-container.expanded,
.nf-feeditem-modal .codex-static-code.expanded {
  width: 1174px;
}
@media screen and (min-width: 700px) and (max-width: 1200px) {
  .nf-feeditem-modal .codex-container.expanded,
  .nf-feeditem-modal .codex-static-code.expanded {
    width: 942px;
  }
}
.codex-flatpage {
  padding: 24px;
  border-radius: 10px;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.25);
  background: #fff;
}
.codex-flatpage table {
  margin-top: 16px;
  width: 100%;
}
.codex-flatpage ul {
  margin: 0;
}

